1.Shell是什么?
Shell是一个命令解释器,它为用户提供了一个向Linux内核发送请求以便运行程序的界面系统级程序,用户可以用Shell来启动、挂起、停止甚至是编写一些程序。
Shell还是一个功能相当强大的编程语言,易编写,易调试,灵活性强。Shell是解释执行的脚本语言,在Shell中可以直接调用Linux系统命令。
2.在Linux系统中查看当前的shell类型:
vi /etc/shells
3.Shell脚本执行的方式:
①赋予执行权限,直接运行
chmod 755 文件名.sh
./文件名.sh
②通过bash调用执行脚本
bash 文件名.sh
4.命令别名与快捷键
ctrl+c 强制终止当前命令
ctrl+l 清屏
ctrl+a 光标移动到命令行首
ctrl+e 光标移动到命令行尾
ctrl+u 从光标所在位置删除到行首
ctrl+z 把命令放入后台
ctrl+r 在历史命令中搜索
5.历史命令
history 【选项】【历史命令保存文件】
-c 清空历史命令
-w 把缓存中的历史命令写入历史命令保存文件 ~/.bash_history
6.输出重定向
例:
命令 > 文件 以覆盖的方式,将命令的输出内容放在文件中。
命令 >> 文件 以追加的方式,将命令的输出内容放在文件中。
错误命令 2> 文件 以覆盖的方式,将命令的输出内容放在文件中。
错误命令 2>>文件 以追加的方式,将命令的输出内容放在文件中。
命令 &>文件 以覆盖的方式,将正确输出和错误输出都保存在同一个文件中。
命令 &>>文件 以追加的方式,将正确的输出和错误的输出都保存在同一个文件中。
命令>>文件1 2>>文件2 将正确的输出追加到文件1中,把错误的输出追加到文件2中。
7.管道符
(1)多命令顺序执行符 格式 作用
; 命令1 ;命令2 多个命令顺序执行,命令之间没有任何逻辑联系。
&& 命令1 && 命令2 命令1正确执行,命令2才执行;命令1执行错误,命令2不会执行。
|| 命令1 || 命令2 命令1执行正确,命令2不会执行;命令1执行错误,命令2才会执行。
(2)管道符
命令1 | 命令2
# 命令1的正确输出作为命令2的操作对象。
8.通配符
通配符 作用
? 匹配一个任意字符
* 匹配多个任意字符
[ ] 匹配中括号中的任意一个字符。例如:[abc]代表一定匹配一个字符,或者是a,或者是b,或者是c。
[-] 匹配中括号中的任意一个字符,-代表一个范围。例如:[a-z]代表匹配一个小写字母。
[^] 逻辑非,匹配中不是括号中的任意一个字符。例如:[^a-z]代表匹配一个不是小写字母的字符。