bash部分特性详解

来源:互联网 发布:苗族与日本 知乎 编辑:程序博客网 时间:2024/06/06 06:25

历史命令history特性

shell会自动保存用户执行过的命令,history是shell的内置命令。
这里写图片描述
1.命令语法格式:
history [-c] [-d OFFSET] [n]
history -anrw [FILENAME]
history -ps VALUE [VALUE…]

-c: 清空命令历史;
-d offset(偏移量):删除指定命令历史,offset为history显示出来的命令数字
-r:从文件读取命令历史至历史列表中;
history #:显示最近的#条命令;

2. 相关环境参数,实现定制环境变量的功能

HISTSIZE:shell进程可保留的命令历史的条数;
HISTFILE:持久保存命令历史的文件,默认为.bash_history
HISTCONTROL:控制命令历史记录的方式
ignoredups:忽略重复的命令;
ignoreboth:以上两者同时生效;

3.调用命令历史列表中的命令

!#:再一次执行历史列表中的第#条命令;
!-#:执行倒数第几条命令;
!!:再一次执行上一条命令;
!STRING:再一次执行命令历史列表中最近一个以STRING开头的命令;
注:命令的重复执行有时候需要依赖于幂等性;

bash补全特性

TAB按键;

如果能惟一标识,则直接补全; 否则,再一次tab,给出列表;

命令执行状态结果特性

1.bash通过状态返回值来输出此结果:
成功:0
失败:1-255
注意:命令正常执行时,有的还会有命令返回值:
根据命令及其功能不同,结果各不相同;

2.状态返回值保存于bash的特殊变量:$?

3.引用命令的执行结果:$(COMMAND) 或 COMMAND

命令行编辑特性(快捷键)

Ctrl+a:跳转至命令行行首
Ctrl+e:跳转至命令行行尾
Ctrl+u:删除行首至光标所在处之间的所有字符;
Ctrl+k:删除光标所在处至行尾的所有字符;
Ctrl+l:清屏,相当于clear

元字符

元字符:具有特殊意义的专用字符,可以用来规定其前导字符在目标对象的出现模式
*:匹配任意长度的任意字符,包括空字符
?:匹配任意单个字符
[]:匹配指定范围内的任意单个字符
例如[abc]、[a-z]、[A-Z]、[a-zA-Z]、[A-Z]、[0-9]、[a-z0-9]

0 0