1.Linux bash基础特性之一:补全
当前系统的shell:cat/etc/shells
当前系统默认shell:echo $SHELL
命令补全:
shell程序在接收到用户执行命令的请求,分析完成之后,最左侧的字符串会被当作命令;查找内部命令;
根据PATH环境变量中设定的目录,自左而右逐个搜索目录下的文件名;
给定的打头字符串如果能惟一标识某命令程序文件,则直接补全;不能惟一标识某命令程序文件,再击tab键一次,会给出列表;
路径补全:和命令机制不一样
在给定的起始路径下,以对应路径下的打头字串来逐一匹配起始路径下的每个文件
tab:如果能唯一标识,则直接补全;否则,再一次tab,给出列表。
2.Linux bash 基础特性之二:快捷键
ctrl+c | 终止前台运行的程序 //ping 192.168.0.111 |
ctrl+d | 退出 等价exit |
ctrl+l | 清屏 |
ctrl+a | 光标移动到命令行的最前端 //编辑命令 |
ctrl+e | 光标移动到命令行的最后端 //编辑命令 |
ctrl+u | 删除光标前的所有字符 //编辑命令 |
ctrl+k | 删除光标后的所有字符 //编辑命令 |
ctrl+r | 搜索历史命令,利用关键词 |
3.Linux bash 基础特性之三:命令历史
命令历史:shell进程会在其会话中保存此前用户提交执行过的命令;
history命令用法:
环境变量 echo $NAME
- HISTSIZE
- HISTFILE
- HISTFILESSIZE
- HISTCONTROL
ignoredups 忽略重复命令
ignoreboth 两者都生效
ignorespace 忽略以空白开头的命令
快捷操作:
- !! 执行上一条命令
- !num 调用历史命令列表中的某条命令
- “ESC键”+.(点号) 调用上一个命令的最后一个参数
- !$ 调用上一个命令的最后一个参数
4.Linux bash 基础特性之四:命令别名
命令别名:
(1)获取所有可用别名的定义:
(2)定义别名:
(3) 永久别名:
添加如下行:alias localhost='cat /etc/sysconfig/network-srcipts/ifcfg-etho'
5.Linux bash 基础特性之五:特殊主重要符号
| 管道:把一个程序的输出当作另一个程序的输入;可以叠加
.(点号):代表当前目录
..(双点号):代表上一级目录
;(分号):在执行多条命令时,用分号分开,顺序地独立执行各条命令
<' '>(单引号):强引用,不做变量替换
<" ">(双引号):弱引用,可以实现变量和命令的替换
{ }大括号:做扩展,或者构建代码块
* (星号):表示通配的作用
通配符
- *:匹配任意长度任意字符
- ?:匹配任意单个字符
- [ ]:匹配指定范围的:·[0-9] [a-z] [0-9a-Z]
·[[:lower:]],[[:upper:]],[[:digit:]],[[:alnum:]],[[:punct:]],[[:space:]]
- [^]:匹配指定范围外的:[^[:lower:]]
显示/etc/目录下以一个大写字母开头并以非数字结尾的文件或目录
显示/etc/目录下以hjkl中任意一个字符开头的文件或目录