例题详解
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了例题详解相关的知识,希望对你有一定的参考价值。
linux中主要是敲一些命令,我们可以通过做题来了解我们有没有掌握这些命令:
1、显示/var目录下所有以l开头,以一个小写字母结尾,且中间出现至少一位数字的文件或目录
ls -d /var/l*[0-9]*[[:lower:]]
2、显示/etc目录下以任意一位数字开头,且以非数字结尾的文件或目录
ls -d /etc/[0-9]*[^0-9]
3、显示/etc/目录下以非字母开头,后面跟了一个字母及其它任意长度任意字符的文件或目录
ls -d /etc/[^a-Z][a-Z]*
4、显示/etc/目录下所有以rc开头,并后面是0-6之间的数字,其它为任意字符的文件或目录
ls -d /etc/rc[0-6]*
5、显示/etc目录下,所有以.d结尾的文件或目录
ls -d /etc/*.d
6、显示/etc目录下,所有.conf结尾,且以m,n,r,p开头的文件或目录
ls -d /etc/[mnrp]*.conf
7、只显示/root下的隐藏文件和目录
ls -a --ignore=[^.]* /root
ls -a -I "[^.]*" /root
ls -d .* /root
8、只显示/etc下的非隐藏目录
ls -d /etc/*/
上面这八道题很简单,基本都是用了文件的通配符和ls的命令来完成的,
ls -a 列出所有文件和目录
ls -d 显示目录名称而非其内容
. 表示隐藏文件
* 表示0或多个任意字符
? 表示任意一个单一字符
[0-9] 表示数字范围
[a-Z]表示所有字母
[bais]表示包含b或a或i或s
[^bais]表示不包含b或a或i或s
[:digit:] 表示任意数字
[:upper:] 表示大写
[:lower:] 表示小写
[:alpha:] 表示任意字母包含大小写
[:alum:] 表示任意字母或数字
[:space:] 表示空格或换行
[:blank:] 表示空格
[:punct:] 表示符号
下面这七道题也是相同类型的,需要注意一下~ 代表“目前用户身份”所在的主文件夹,其他题参靠通配符都能做出来
1、显示/etc目录下所有以k开头,以一个小写字母结尾,且中间出现至少一位数字的文件或目录
ls -d /etc/k*[[:digit:]]*[[:lower]]
2、显示/proc目录下名字由任意三位数字组成的文件或目录
ls -d /proc/[0-9][0-9][0-9]
3、显示/var/log目录下文件名包含符号及数字的文件或目录
ls -d /var/log/*[[:punct:]]*[0-9]*
4、显示/usr/share/man目录下所有以m开头,以一个数字和x结尾的文件或目录
ls -d /usr/share/man/m*[0-9]x
5、显示/etc目录下,所有以一个大写字母开头,以两个数字结尾的文件或目录
ls -d /etc/[[:upper]]*[0-9][0-9]
6、显示/etc目录下,文件名至少包含一个小写字母和一个数字并以.conf结尾的文件或目录
ls -d /etc/*[[:lower]]*[0-9]*.conf
7、只显示用户家目录下的非隐藏目录
ls -d ~/*/
下面这八道题主要主要考察了管道符 | 和 tr以及输入输出重定向
Linux系统中的命令可以将标准输入读取数据,还能将这些数据送到标准输出中去,这种功能被系统进一步的利用,从而产生出一种新的特性,称之为管道符“|”, 这 个符号可以将一个命令的标准输出管道为另外一个命令的标准输入。
需要注意的是管道符的使用有两个条件:
1、管道命令只能处理前一个命令的标准输出,而不能处理标准错误;
2、管道命令右边命令必须能够接收标准输入。
标准输入(stain):代码为0,使用<或<<,
标准输出(stdout);代码为1,使用>或>>.
标准错误输出(stderr):代码为2,使用2>或2>>
1>:以覆盖的方法将正确的数据输出到指定的文件或设备上
1>>:以累加的方法将正确的数据输出到指定的文件或设备上
2>: 以覆盖的方法将错误的数据输出到指定的文件或设备上
2>>:以累加的方法将错误的数据输出到指定的文件或设备上
tr 用来标准输入中通过替换或删除操作进字符转换。常用命令:
-c 用字符串1中字符集的补集替换此字符集,要求字符集为ASCII
-d 删除字符串1中所有输入字符
-s 删除所有重复出现字符序列,只保留第一个,即将重复出现字符串压缩为一个字符串。
今天先更新到这里把,改天再写,长时间面对电脑也不好。
以上是关于例题详解的主要内容,如果未能解决你的问题,请参考以下文章