bash-completion

Bash programmable completion when typing “first command”

感情迁移 提交于 2020-07-06 12:26:33
问题 Is there a way how to control completion for first command being typed on bash4 command prompt? I can control completions for "empty line" with complete -E, but as soon as some characters are typed, bash (or possibly readline) gives me all filenames from PATH, builtin commands (if, then, else...) and functions on completion attempt (TAB). I was able to avoid PATH entries by unsetting PATH in PROMPT_COMMAND and restoring it by binding function to trap DEBUG, but no luck with getting rid of

bash completion of makefile target

断了今生、忘了曾经 提交于 2020-06-24 02:55:40
问题 Suppose I have a simple makefile like: hello: echo "hello world" bye: echo "bye bye" Then in bash I want something like: make h < tab > so it can complete to make hello I found a simple way like creating empty files hello and bye but I'm looking for something more sophisticated . 回答1: Could this be what you're looking for? http://freshmeat.net/projects/bashcompletion/ make [Tab] would complete on all targets in Makefile. This project was conceived to produce programmable completion routines

kubeadm 线上集群部署(一) 外部 ETCD 集群搭建

若如初见. 提交于 2020-05-02 08:36:27
IP Hostname 172.16.100.251 nginx01 代理 apiverser 172.16.100.252 nginx02 代理 apiverser 172.16.100.254 apiserver01.xxx.com VIP地址,主要用于nginx高可用确保nginx中途不会中途 172.16.100.51 k8s-etcd-01 etcd集群节点,默认关于ETCD所有操作均在此节点上操作 172.16.100.52 k8s-etcd-02 etcd集群节点 172.16.100.53 k8s-etcd-03 etcd集群节点 172.16.100.31 k8s-master-01 Work Master集群节点,默认关于k8s所有操作均在此节点上操作 172.16.100.32 k8s-master-02 Work Master集群节点 172.16.100.33 k8s-master-03 Work Master集群节点 172.16.100.34 k8s-master-04 Work Master集群节点 172.16.100.35 k8s-master-05 Work Master集群节点 172.16.100.36 k8s-node-01 Work node节点 172.16.100.37 k8s-node-02 Work node节点 172.16

Kubernetes--k8s---kubectl安装和设置

做~自己de王妃 提交于 2020-04-28 21:36:08
使用Kubernetes命令行工具kubectl可以在Kubernetes上部署和管理应用程序。 使用kubectl,可以检查集群资源; 创建,删除和更新组件。 以下是安装kubectl的几种方法。 通过curl安装kubectl二进制文件 MacOS 下载最新版本的命令: curl -LO https://storage.googleapis.com/kubernetes-release/release/$(curl -s https://storage.googleapis.com/kubernetes-release/release/stable.txt)/bin/darwin/amd64/kubectl 要下载特定版本,请使用特定版本替换$(curl -s https://storage.googleapis.com/kubernetes-release/release/stable.txt) 命令的一部分。 例如,要在MacOS上下载v1.7.0版本,请键入: curl -LO https://storage.googleapis.com/kubernetes-release/release/v1.7.0/bin/darwin/amd64/kubectl 使kubectl二进制可执行。 chmod +x ./kubectl 将二进制文件移动到PATH中。 sudo mv

k8s增加命令tab功能

最后都变了- 提交于 2020-04-20 05:27:42
安装 yum install -y bash-completion 生效 source /usr/share/bash-completion/bash_completion 设置 source <(kubectl completion bash) 变量 echo "source <(kubectl completion bash)" >> ~/.bashrc 来源: oschina 链接: https://my.oschina.net/u/4362486/blog/3275057

CentOS7 解决无法使用tab自动补全 tab代码提示

我只是一个虾纸丫 提交于 2020-03-17 23:30:27
某厂面试归来,发现自己落伍了!>>> 一、前言 对于刚刚开始学习linux的新人来说,linux的一切都显着神秘,只能惊叹于大牛在Linux上行云流水的操作。今天介绍一下在linux中自动补全的功能。 对于新人来说,在不懂得技巧的情况下,每次要操作类似 apache-tomcat-8.5.27.tar.gz 这样的文件时都很头疼,只能硬着头皮敲着文件名。在linux中,按下tab键就可以自动补全,只要输入apac再按tab键就会有奇迹发生咯! 二、解决问题 CentOS在最小化安装时,没有安装自动补全的包,需要手动安装。 yum -y install bash-completion 安装好后,重新登陆即可(刷新bash环境) 刷新bash环境变量 就是重新启动这个脚本source /etc/profile 下面这个命令是关于centos命令启动的历史演变 https://zhangzifan.com/centos-systemctl.html 来源: oschina 链接: https://my.oschina.net/u/2294923/blog/1858020

shell介绍、命令历史、补全、别名、通配符、输入/输出重定向

坚强是说给别人听的谎言 提交于 2020-03-16 00:03:10
shell介绍 shell是系统跟计算机硬件交互时使用的中间介质,它只是系统的一个工具。 用户直接面对的不是计算机硬件而是shell,用户把指令告诉shell,然后shell再传输给系统内核,接着内核再去支配计算机硬件去执行各种操作。 每个用户都可以有自己特定的shell。 centos7默认的shell版本是bash,它是sh的增强版本。还有其他的版本,比如;zsh、ksh等。 命令历史 我们执行过的命令linux都会有记录,预设可以记录1000条历史命令执行命令history就可以查看 history -c 清空内存里的命令历史 这些历史命令会保存在用户家目录的 .bash_history 文件中 命令历史是由环境变量HISTSIZE配置的, 我们可以在配置文件 /etc/profile修改命令历史保存记录 执行命令 source /etc/profile 使它生效, 查看命令历史时加上运行命令的时间: HISTTIMEFORMAT="%Y/%m/%d %H:%M:%S" 也可以在配置文件/etc/profile 中增加这一行在HISTSIZE=5000下面 增加权限,永久保存 chattr +a ~/.bash_history !是与命令历史有关的一个特殊字符,这个字符常用的应用有3个: !!:执行上一条命令 !n:n是一个数字,这样表示执行命令历史中的第n条命令 !字符串

shell介绍,命令输入历史、补全和别名,通配符,输入输出重定向

旧城冷巷雨未停 提交于 2020-03-15 23:50:38
什么是shell shell是一个命令解释器,提供用户和机器之间的交互 支持特定语法,比如逻辑判断、循环 每个用户都可以有自己特定的shell CentOS7默认shell为bash(Bourne Agin Shell) 还有zsh、ksh等 命令历史 history命令,查看命令的输入历史 .bash_history,命令输入历史保存文件,默认1000条 变量HISTSIZE,在/etc/profile中修改;HISTTIMEFORMAT="%Y/%m/%d %H:%M:%S ",历史命令中时间格式化显示 /etc/profile文件生效方式: 重新进终端或者source /etc/profile 永久保存命令输入历史 chattr +a ~/.bash_history !! # 执行上一条命令 !n # 执行命令历史文件中第n条命令 !word 根据时间在命令历史文件中从新到老找到的第一个word命令执行 history -c # 清空内存中缓存的命令,不会清空.bash_history文件的内容 退出终端时会把内存中的命令写到.bash_history文件中 命令补全及别名 tab键,敲一下会补全能唯一确定的一个命令,敲两下列出可选的命令 命令参数补全,安装bash-completion,安装完成后需要重启系统才能生效(CentOS7支持) alias 别名 #

Centos7.4版本下修改网卡名称为eth0

孤街浪徒 提交于 2020-03-10 16:44:01
项目组最近需要安装部署多条centos7.4-1708版本的系统。通过ios刻录光盘且不必说,也可以通过usb进行刻录安装系统。 安装完成3台机器之后,要求内核升级至4.19.12版本。安装过程采用全英文键盘,选择上海时区,建立账户,格式化磁盘等一顿操作完成后,可以登录,并安装一些必备的软件,要求不能yum update全局更新,只能每次单独安装所需软件包。 比如: yum install -y bash-completion yum install -y vim yum install -y net-tools.x86_64 然后手动下载内核rmp包: kernel-ml-4.19.12-1.el7.elrepo.x86_64.rpm 升级命令: yum install -y kernel-ml- 4.19.12-1.el7.elrepo.x86_64.rpm 然后修改启动时新内核排第一,默认进入: grub2-set-default 0,重启。 之后,发现ifconfig命令改eno1名字-->eth0 发现只有在原有内核中操作才会生效。因为出现的修改不成功,不生效的问题。 #更改网卡配置文件名称 cd /etc/sysconfig/network-scripts/ mv ifcfg-eno33559296 ifcfg-eth0 #编辑网卡ifcfg-eth0信息 NAME