Linux Shell基础
一、shell介绍
1、shell是一个命令解释器,提供用户和机器之间的交互
2、支持特定语法,比如逻辑判断、循环
3、每个用户都可以有自己特定的shell
4、CentOS7默认shell为bash(Bourne Agin Shell)
5、还有zsh、ksh等
二、命令历史
1、history命令
最多保存1000条、变量为HISTSIZE
2、.bash_history 命令历史配置文件
3、/etc/profile中修改配置文件
4、HISTTIMEFORMAT="%Y/%m/%d %H:%M:%S" 对应命令是何时运行的命令
5、永久保存chattr +a ~/.bash_history
6、!!执行上一条命令
7、!n(任意数字)运行对应行数的命令
8、!word(命令)运行从后往前最近的一条以word开头的命令
三、命令补全和别名
1、tab键,敲一下补全,敲两下显示多个可用参数
2、参数补全,安装bash-completion
3、alias别名给命令重新起名字,用unalias取消别名
4、各用户都有自己配置别名的文件 ~/.bashrc
5、ls /etc/profile.d/
6、自定义的alias放到~/.bashrc
四、通配符
1、ls *.txt 找到以.txt结尾的文件
2、ls ?.txt 找到以单个字符+.txt结尾的文件
3、ls[0-9].txt 找到括号范围内+.txt结尾的文件
4、ls{1,2}.txt 找到有括号内字符+.txt结尾的文件
五、输入输出重定向
5、cat 1.txt > 2.txt 将前文件的内容重定向到后文件中
6、cat 1.txt >> 2.txt 将前文件的内容追加到后文件中
7、ls aaa.txt 2>err 将命令产生的错误信息输出到指定文件
8、ls aaa.txt 2>>err 将命令产生的错误信息追加到指定文件 ;>&1将正确和错误的命令输出到指定文件
9、wc -l < 1.txt 将后文件重定向到前命令中;前必须是命令,不能是文件
10、command > 1.txt 2>&1