|
一、shell介绍
1、shell是一个命令解释器,提供用户和机器进行交互,每个用户都可以有自己特定的shell ,
2、CentOS7 默认shell为bash,还有zsh,ksh它们有细节上的差异而已,
我们可以查下系统中是否存在zsh: yum list |grep zsh
bash有哪些特性?
二、命令历史(history)
1、它的存储的文件为:/root/.bash_history
2、当我们退出终端后,它才会储存到以上的文件中。
它的配制文件为:/etc/profile ,如果你修改里面的文件,不想退出终端就想生效
运行命令:source /etc/profile 然后用命令查看是否生效:echo $HISTSIZE
3、更改historyntnt属性,比如增加记录时间:
HISTTIMEFORMAT="%Y/%m/%d %H:%M:%S”
1、用vim编辑/etc/profile 把HISTTIMEFORMAT="%Y/%m/%d %H:%M:%S” 变量放到变量HISTSIZE下面
然后保存退出,
2、让我们的命令历史永久保存,给它增加一个a权限:chattr +a /root/.bash_history, 然后用lsattr查看一下吧
3、!! 最后一条命令
4、!n (n是数字)比如说你想运行66命令:!66
5、!echo 它会在从历史命令中最后找以echo开头的命令
三、命令补全及别名
1、tab 敲一下补全,敲两下 (在cenos6 里面不支持命令参数补全,在centos7里面是支持命令参数补全)
2 、比如我们要让systemctl restart network.service 我们需要安装包:yum install -y bash-completion ,重启:
3、我们可以把上面的命令做别名:alias restartnet="systemctl restart network.service"
自定义的alias放到〜/.bashrc里面了,
四、通配符
1、在bash下,我们可以用“* ” 来匹配多个字符,用?匹配一个字符。
2、用?号匹配一个任意的字符。
3、用[ ] 给一个范围的字符。例:ls [123456].txt
4、用{ } 也是给一个范围。但要多个,号;例:ls {1,2,3,4}.txt
五、输入输出重定向
1、输入重定向命令:< 例:
2、输出重定向的命令: > 把一个文件内容重定向到一个文件里面去。例:cat 1.txt > 2.txt
3、错误重定向命令: 2> 把错误信息定向到你一个文件里面去。例:我们输入一个错误命令,要把信息定向到一个文件里面去:
lsbbbb 2> 1.txt
追加错误重定向:2>>
+2> == &> 结合了正确和错误信息。例:
ls [123].txt aaa.txt &> a.txt 同时我们可以让正确的命令跟错误的命令分文件存储: ls [12].txt aaa.txt >1.txt 2>a.txt
同样支持追加 &>>
4、追加重定向命令:>> 例:cat 1.txt >>2.txt
|
|
|