查找指定目录下包含"xml"的文件

你的名字 2022-06-10 12:57 383阅读 0赞

寻找当前母目录下包含”xml”这三个字符的文件。如果找到的胡话,就在当前的屏幕上打印出来。

获取/目录下的内容

  1. [root@VM_156_149_centos ~]# ls -l /
  2. total 68
  3. lrwxrwxrwx. 1 root root 7 Apr 21 2016 bin -> usr/bin
  4. dr-xr-xr-x. 4 root root 4096 Jul 25 15:21 boot
  5. drwxr-xr-x 2 root root 4096 Apr 21 2016 data
  6. drwxr-xr-x 18 root root 2860 Aug 19 13:21 dev
  7. drwxr-xr-x. 85 root root 4096 Aug 19 13:21 etc
  8. drwxr-xr-x. 2 root root 4096 Aug 12 2015 home
  9. lrwxrwxrwx. 1 root root 7 Apr 21 2016 lib -> usr/lib
  10. lrwxrwxrwx. 1 root root 9 Apr 21 2016 lib64 -> usr/lib64
  11. drwx------. 2 root root 16384 Apr 21 2016 lost+found
  12. drwxr-xr-x. 2 root root 4096 Aug 12 2015 media
  13. drwxr-xr-x. 2 root root 4096 Aug 12 2015 mnt
  14. drwxr-xr-x. 3 root root 4096 Apr 21 2016 opt
  15. dr-xr-xr-x 92 root root 0 Aug 19 13:21 proc
  16. dr-xr-x---. 3 root root 4096 Aug 19 17:35 root
  17. drwxr-xr-x 21 root root 720 Aug 19 13:22 run
  18. lrwxrwxrwx. 1 root root 8 Apr 21 2016 sbin -> usr/sbin
  19. drwxr-xr-x 2 root root 4096 Aug 19 17:40 shell
  20. drwxr-xr-x. 2 root root 4096 Aug 12 2015 srv
  21. dr-xr-xr-x 13 root root 0 Aug 19 13:21 sys
  22. drwxrwxrwt. 7 root root 4096 Aug 19 17:28 tmp
  23. drwxr-xr-x. 13 root root 4096 Apr 21 2016 usr
  24. drwxr-xr-x. 19 root root 4096 Aug 19 13:21 var

使用awk获取到,每一行里面第9列的内容

  1. [root@VM_156_149_centos ~]# ls -l / | awk '{ printf $9 " " } '
  2. bin boot data dev etc home lib lib64 lost+found media mnt opt proc root run sbin shell srv sys tmp usr var

在获取的第9列中,筛选出符合条件的内容,例如”包含b字符”

  1. [root@VM_156_149_centos ~]# ls -l / | grep "b" --color | awk '{ printf $9 " " } '
  2. bin boot lib lib64 sbin

Shell Script 1

  1. #!/bin/sh
  2. #获取符合条件的行
  3. FILES=` ls -l / | awk '{print $9}' `
  4. #输出获取的行的内容
  5. echo $FILES
  6. #进行条件的过滤
  7. for filename in $FILES
  8. do
  9. echo $filename | grep "b" --color
  10. done

输出结果

  1. [root@VM_156_149_centos shell]# sh 2.sh
  2. bin boot data dev etc home lib lib64 lost+found media mnt opt proc root run sbin shell srv sys tmp usr var
  3. bin
  4. boot
  5. lib
  6. lib64
  7. sbin

Shell Script 2

  1. #!/bin/sh
  2. for filename in `ls /`
  3. do
  4. if [[ $filename = *b* ]] ; then
  5. echo $filename
  6. fi
  7. done

输出结果

  1. [root@VM_156_149_centos shell]# sh 8.sh
  2. bin
  3. boot
  4. lib
  5. lib64
  6. sbin

发表评论

表情:
评论列表 (有 0 条评论,383人围观)

还没有评论,来说两句吧...

相关阅读