鸟哥Linux私房菜第七章习题难题解答

1.找出/etc下面,文件大小介于50KB到60KB之间的文件,并且将权限完整的列出

答案为 find /etc -size +50k -size -60k -exec ls -l {} \;

或写成find /etc \( -size +50k -and -size -60k \) -exec ls -l {} \;也可以

此处得知 默认判定为“与”判定 即 -and 取条件均符合者输出

2.找出/etc下面,文件容量大于50KB且文件所有者不是root的文件名,且将权限完整列出

答案为 find /etc -size +50k  ! -user root -exec ls -l {} \;

此处!为“非”判定 ,代表若!后面为真  则不输出

3.找出/etc下面,容量大于1500KB以及容量等于0的文件

由于没要求完整输出,该题最简单答案如下

find /etc -size +1500k ; find /etc -size 0k

若要完整显示输出,也可这样写

find /etc -size +1500k -exec ls -l {} \; ; find /etc -size 0k -exec ls -l {} \;

但是太繁琐了,不过此命令可以看出;加不加转义的不同意义

此题若用 -o 这个参数

则可这样解

find /etc \( -size +1500k -o -size 0k \) -exec ls -l {} \;

这里则必须用转义的( )括起来 -o 才有想要的效果.  

此处则为“或”判定 , 条件符合其一者即输出。

3道题考察find命令的与或非表达式如何书写及结果。


你可能感兴趣的:(linux,find命令,鸟哥,答案,习题)