shell
命令解释器。人机交互的接口。第三方的翻译工具。shell脚本语言。
系统怎么知道你敲打了ls命令是列出当前目录的内容?(敲打命令实则是交给内核执行)
shell解释器充当中间人翻译的作用,将用户输入的命令(ls pwd cd等)翻译成为系统内核看得懂的语言
shell的种类
bash shell(主流的Linuxshell解释器) csh ksh
bash shell更加符合用户敲打命令的习惯,提供不同的功能作用大多数的Linux系统默认的shell程序是bash shell,比如说centos openeuler rhel等等,今天你学会了rhel的命令,你去centos 你去openeuler系统依旧会敲打命令,因为它们默认的shell程序都是bash shell
bash shell提供的功能
1.快捷键
a.ctrl+A 把光标移动到命令行开头
b.ctrl+E 把光标移动到命令行结尾
c.ctrl+C 强制终止当前的命令
d.ctrl+L 清屏,相当于 clear 命令
e.ctrl+U 删除或剪切光标之前的命令
f.ctrl+K 删除或剪切光标之后的内容
g.ctrl+Y 粘贴 ctrl+U 或 ctrl+K 剪切的内容
h.ctrl+R 在历史命令中搜索
i.ctrl+D 退出当前终端
j.ctrl+Z 暂停,并放入后台
k.ctrl+S 暂停屏幕输出
l.ctrl+Q 恢复屏幕输出
2.history 历史记录
历史记录文件:
~username/.bash_history
history -c 清空历史记录
history -w 将历史记录立即写入到文件中
永久删除历史记录:
history -w
echo > ~username/.bash_history
history -c
3.通配符
快速的定位文件
* 匹配所有
? 匹配任意单个字符
[abc] 匹配该列表中的任意字符
[0-9] 匹配该列表中的任意单个数字
[^abc] 匹配除该列表意外的所有字符
[:alpha:] 匹配字母(不区分大小写)
[:lower:] 匹配小写字母
[:upper:] 匹配大写字母
[:digit:] 匹配数字
[:alnum:] 匹配任意字母或数字
4.命令扩展符号
~ 表示用户的家目录
` ` 和 $() 命令的执行符号:引用命令的结果
{ } 表示一个范围,有顺序的匹配大括号内的字符
eg: touch {1..10}.txt touch {a..d}.txt touch {1..10..2}.txt
如果括号内范围不连续,则使用 逗号 隔开
eg: touch {rhel,openeuler,centos}.txt