8.1 shell介绍

Linux学习笔记第五周第三次课(3月7日)

Linux学习笔记第五周第三次课(3月7日)

每个用户都有自己的shell;

Bourne人名,为了纪念他;

搜索zsh命令,#yum list | grep zsh

搜索ksh命令,#yum list | grep ksh

逻辑判断if,for等等;


8.2 命令历史

Linux学习笔记第五周第三次课(3月7日)

Linux学习笔记第五周第三次课(3月7日)

输入过的命令,会记录下来,上下键进行查看;

历史命令存在.bash_history里面,最大1000条;

查看变量HISTSIZE条数,#echo $HISTSIZE

查看目前的历史命令内容,#history;

设置记录历史命令和所运行时间,#HISTTIMEFORMAT="%Y/%m/%d %H:%M:%S";

清空内存历史命令,#history -c ;.bash_history不会被清空,上下键也没有了历史命令,

环境变量修改,#vi /etc/profile;修改后生效命令,#source /etc/profile;

只能追加命令,#chattr +a ~/.bash_history;

#!!表示上一条历史命令;

#!n表示执行第n条历史命令;

#!word表示执行以关键词word开头的历史命令;


8.3 命令补全和别名

Linux学习笔记第五周第三次课(3月7日)

Linux学习笔记第五周第三次课(3月7日)

tab键补全,敲一下补全,敲两下显示以关键字开头的所有命令;

参数补全安装,#yum install -y bash-completion


别名设置,#alias restartnet='systemctl restart network.service'

列出所有别名,#alias

别名存在的目录,家目录/.bashrc 和 /etc/profile.d/


8.4 通配符

Linux学习笔记第五周第三次课(3月7日)

Linux学习笔记第五周第三次课(3月7日)

*表示通配,前后都可以,不分字符和字符数目;

?表示一个任意的字符;

【0-9】表示范围内,任意一个数字;【0123456789】范围内任意一个数字;

{1,2}表示范围内,任意一个数字,比【】里面数字多了逗号划分开;


8.5 输入输出重定向


输出重定向

>表示执行前面命令得到的内容输出到后面文件,会覆盖;正确

>>表示追加内容;正确

2>表示前面命令执行产生的错误信息输入到文件中;

2>>表示追加执行的错误信息;

&>表示错误和正确的信息都输入进去;

&>>表示追加错误和正确的信息;

command >1.txt 2>a.txt表示正确的写入1.txt,错误的写入a.txt;


输入重定向

wc -l 查看文本文档行数

wc -l < 1.txt表示将后边的1.txt输入到前面命令里面去;