- 通配符
1、显示/var目录下所有以L开头,以一个小字母结尾,且中间出现至少一位数字的文件或目录
2、显示/etc目录下以任意一位数字开头,且以非数字结尾的文件或目录ls /var/l*[[:digit:]]*[[:lower:]]
3、显示/etc/目录下以非字母开头,后面跟了一个字母及其它任意长度任意字符的文件或目录ls -d /etc/[[:digit:]]*[^[:digit:]] 或: ll /etc/[0-9]*[^0-9]
4、显示/etc/目录下所有以rc开头,并后面是0-6之间的数字,其它为任意字符的文件或目录ls -a /etc/[^a-Z][a-Z]* 或: ls -a /etc/[^[:alpha:]][:alpha:]*
5、显示/etc目录下,所有以.d结尾的文件或目录ls -d /etc/rc[0-6]*
6、显示/etc目录下,所有.conf结尾,且以m,n,r,p开头的文件或目录ls -d /etc/*.d
7、只显示/root下的隐藏文件和目录ls -d /etc/[mnrp]*.conf
8、只显示/etc下的非隐藏目录ls .*
ls /etc/[^.]*
- 管道实现重定向
1、将/etc/issue文件中的内容转换为大写后保存至/tmp/issue.out文件中cat /etc/issue | tr [:lower:] [:upper:] > /tmp/issue.out
2、将当前系统登录用户的信息转换为大写后保存至/tmp/who.out文件中who | tr 'a-z' 'A-Z' > /tmp/who.out
3、一个linux用户给root发邮件,要求邮件标题为“help”,邮件正文如下:
Hello,I am 用户名,The system version is here,pls help me to check it,thanks!
4、将/root/下文件列表,显示成一行,并文件名之间用空格隔开#mail -s help root >>EOF >Hello,I am $USER,The system version is here,pls help me to check it,thanks! >`lsb_release -a` >EOF
5、计算1+2+3+…+99+100的总和ls -a / |tr '\n' ' '
6、删除Windows文本文件中的回车字符,即“\r”echo {1..100} |tr ' ' + |bc 或: seq -s+ 100
7、处理字符串“xt.,| 1 jr#!$mn 2 c*/fe 3 uz 4”,只保留其中的数字和空格cat win.txt |tr -d '\r'
8、将PATH变量每个目录显示在独立的一行echo 'xt.,| 1 jr#!$mn 2 c*/fe 3 uz 4' |tr -dc '0-9 ' 或: echo 'xt.,| 1 jr#!$mn 2 c*/fe 3 uz 4' |tr -dc [[:digit:][:space:]]
9、将指定文件中0-9分别替代成a-jecho $PATH |tr ':' '\n'
10、将文件/etc/centos-release中每个单词(由字母组成)显示在独立一行echo {0..9} |tr '0-9' 'a-j'
cat /etc/centos-release |tr ' ' '\n'