//转载自https://blog.51cto.com/10461810/2093380,侵必删。
1.命令别名
定义别名 alias name='value' 只对当前shell有效
取消别名 unalias name
-a:取消所有别名
bash进程重读配置文件
source /path/to/config_file
. /path/to/config_file
当命令别名与原名同名时,执行原命令
\command,/path/to/cmmand,'aliasname',"aliasname",command aliasname
当别名与内部命令,外部命令同名时会先执行别名
优先级 别名>内部命令>外部命令
2.命令历史
-
保存输入的命令历史,登录shell时,会读取命令历史文件~/.bash_history中记录下的命令到内存中,登录进shell后新执行命令会记录在缓存中,当用户正常退出时这些命令会追加到命令历史文件中。
history [-c] [-d offset] [n]
-c:清空命令历史
-d offset:删除历史中指定的第offset个命令
-n:显示最近的n条历史
相关环境变量
HISTSIZE 命令历史大小
HISTFILE 指定命令历史文件
HISTFILESIZE 命令历史文件大小
Esc,. !$ Alt+.
重复执行前一个命令 !! 方向上键
执行history中对应数字的命令 !n
3.Tab补全
命令补全
路径补全
如果唯一,则直接补全;不唯一,再次Tab给出列表
$2Tab 显示所有变量
4.命令Hash
外部命令Hash缓存表
系统初始Hash表为空,当外部命令执行时,默认会从PATH路径下寻找该命令,找到后会将此条命令的路径记录到Hash表中,当再次使用该命令时,Shell解释器会首先查看Hash表,存在将执行之,如果不存在,将会去PATH路径下寻找,利用Hash缓存表来大大提高命令的调用速率。
hash 显示全部缓存
-r:清除缓存
-t name:显示name缓存路径
-r name:清除name缓存
5.Bash快捷键
常用快捷键
ctrl+c 取消命令
ctrl+d 中止命令
ctrl+a 光标跳到行首
ctrl+e 光标跳到行尾
ctrl+l 清屏
*:匹配任意字符
?:匹配任意单个字符
-~:前一个工作目录
[0-9]:数字范围
[a-z]:字母
[A-Z]:字母
[string]:匹配列表中的任意一个字符
[^string]:匹配列表中所有字符以外的字符
预定义的字符类:man 7 glob
[:digit:]:数字
[:lower:]:小写字母
[:upper:]:大写字母
[:alpha:]:任意大小写字母
[:alnum:]:任意数字或字母
[:punct:]:标点符号
[:blank:]:水平空白字符
[:space:]:水平或垂直空白字符
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。