shell脚本基础
查询下达过的命令 history
history [-raw] histfile
n 数字,列出最近的n笔命令
-a 将新增的history命令新增到histfiles中,若没有加histfiles,则默认写入 ~/.bash_history(隐藏文件,每一个用户都有)
-r 将histfiles的内容读到目录这个shell的history记忆中
-w 将目前的history记忆内容写入histfiles中
历史保留1000条,在/etc/profile中配置,可以利用 echo $HISTSIZE(系统变量或全局变量--大写) 打印这个数值。
历史命令在用户注销时,会将最近的HISTFILESIZE笔记录到用户的记录文件当中
使用上、下箭头调用以前的历史命令
! number 运行第几笔命令
! command 由最近向前搜索(命令串开头为command)的那个命令,并运行
!! 就是运行上一个命令
使用“!字串”重复执行最后一条以该字串开头的命令
命令别名: alias 别名='原命令'('='号两边没空格)
注:当前用户可用,当启用另一个用户或重新登录时,别名无法被其使用;不同的终端也不可用。
若要每次登入就自动生效别名,则把别名加在/etc/profile或~/.bashrc中(不会立即生效)。然后 source ~/.bashrc 或 . ~/.bashrc(有空格);
若要让每一位用户都生效别名,则把别名加在/etc/bashrc最后面,然后 source /etc/bashrc。
命令的顺序执行:
ls -a ; date (命令可在同一行,中间用;隔开)
test22t.sh 不存在
ls tes22t.sh > /dev/null && echo "good" || echo "not good“
ls tes22t.sh &> /dev/null && echo "good" || echo "not good"
用逻辑与和或可以实现简单的逻辑运算代替if,else从而实现简化