Linux基础命令练习答案7.27 1.出/tmp⽬录下,属主不是root,且⽂件名不以f开头的⽂件
find    /tmp    -type  f    !  -user  root  ! -name  'f*'
find    /tmp    -type  f    !  -user  root  -name  '[^f]'
2.查/etc/⽬录下,所有.conf后缀的⽂件
find    /etc/    -type    f    -name  '*.conf'
3.查/var⽬录下属主为root,且属组为mail的所有⽂件
find    /var    -type  f  -user    root  -group  mail
4.查/var⽬录下7天以前,同时属主不为root,也不是postfix的⽂件
find    /var    -type    f        !  \( -user root    -o    -user  postfix \)    -mtime  +7
5.查/etc⽬录下⼤于1M且类型为普通⽂件的所有⽂件
find    /etc      -type    f        -size  +1M
6.查/etc⽬录下所有⽤户都没有写权限的⽂件
find  /etc    -type    f    !  -perm    /222
7.查/⽬录下最后创建时间是3天前,后缀是*.log的⽂件
find  /  -mtime  +3  -type  f  -name  '*.log'
8.查/⽬录下⽂件名包含txt的⽂件
find  /  -type  f    -name  '*txt*'
9.查/⽬录下属主是oldboy并且属组是oldboy的⽂件
find  /  -type f      -user  oldboy  -group  oldboy
10.查/⽬录下属主是oldboy但是属组不是oldboy的⽂件
find查命令的使用find / -type f -user oldboy ! -group oldboy
11.查/⽬录下属主是oldboy或者属主是oldgirl的⽂件
find  /  -type  f    \( -user oldboy  -o  -user  oldgirl \)
12.查/tmp⽬录下属主既不是oldboy,也不是oldgirl的⽂件
find    /tmp  -type  f  !  -user oldboy  !  -user oldgirl
13.查/var/log⽬录下7天以前的⽂件
find  /var/log    -type  f    -mtime  +7
14.查/tmp⽬录下15天以前的⽂件删除
find  /tmp    -type  f  -mtime  +15    -delete
find  /tmp    -type  f  -mtime  +15  | xargs rm -rf
find  /tmp    -type  f  -mtime  +15  -exec  rm -rf  {}  \;
rm -rf  $( find  /tmp    -type  f  -mtime  +15 )
rm -rf  ` find  /tmp    -type  f  -mtime  +15 `
15.查/home⽬录下,类型是⽬录的,并且属主是oldboy的⽬录
find  /home  -type  d  -user oldboy
16.查/var/log下⼤于100kb且以log结尾的所有⽂件
find  /var/log  -type f  -size  +100k  -name  '*log'
17.查tmp⽬录下所属组group1,所属主user1的⽬录
find  /tmp  -type  d  -user  user1  -group  group1
18.同时查根⽬录下名为1.txt,2.txt的⽂件和名字带a的⽬录
find  /  \( -type f    -name  '[12].txt'  -o    -type d  -name  '*a*' \)
19.查/tmp⽬录下所有⽂件并删除
find  /tmp  -type  f    -delete
20.查/etc⽬录下⾄少有⼀类⽤户没有写权限的⽂件
find  /etc    -type  f    !    -perm  -222
21.查/var⽬录下不属于root、lp、gdm的所有⽂件
find  /var      -type  f    !  \( -user root -o  -user lp -o -user gdm \)
22.将/etc/中的所有⽬录(仅⽬录)复制到/tmp下,⽬录结构不变
find  /etc  -type  d  -exec  mkdir -p  /opt/{}  \;
find  /etc/  -type  d  | xargs  -I {}  mkdir  -p  /tmp/{}
23.将/etc⽬录复制到/var/tmp/,/var/tmp/etc的所有⽬录权限777/var/tmp/etc⽬录中所有⽂件权限666
cp  -a  /etc  /var/tmp
find  /var/tmp/etc    -type  d  -exes chmod  777  {}  \;
find  /var/tmp/etc    -type  f  -exec chmod  666  {}  \;
24.保留/var/log/下最近7天的⽇志⽂件,其他全部删除
find  /var/log  -mtime  +7  -delete
find  /var/log    ! -mtime  -7  -delete
25.创建touch file{1..10}10个⽂件, 保留file9,其他⼀次全部删除
find  /root  -type  f  ! -name  'file9' -delete
find  /root  -type  f  -name  'file[^9]*'  -delete
26.解释如下每条命令含义
mkdir /root/dir1              #在root⽬录下创建dir1⽬录
touch /root/dir1/file{1..10}        #在dir1⽬录下创建file1~file10 10个⽂件
find /root/dir1 -type f -name "file5"    #查dir1⽬录下的file5⽂件
find /root/dir1 ! -name "file5"            #查dir1⽬录下不是file5的⽂件或⽬录
find /root/dir1 -name "file5" -o -name "file9"      #查dir1⽬录下file5或file9的⽂件或⽬录
find /root/dir1 -name "file5" -o -name "file9" -ls    #错误写法
find /root/dir1 \( -name "file5" -o -name "file9" \) -ls    #查dir1⽬录下file5或file9的⽂件或⽬录并以长格式显⽰
find /root/dir1 \( -name "file5" -o -name "file9" \) -exec rm -rvf {} \;  #查dir1⽬录下file5或file9的⽂件或⽬录并删除find /root/dir1 ! \( -name "file4" -o -name "file8" \) -exec rm -vf {} \;  #查dir1⽬录下不是file5或file9的⽂件或⽬录并删除

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。