文本過濾、文本查找工具應用示例

文本過濾、文本查找工具應用示例

  • 1.顯示當前系統上root、fedora或user1用戶的默認shell

    [root@localhost ~]# cat /etc/passwd|grep "^root\>\|^fedora\>\|^user1\>"|cut -d: -f7
      /bin/bash
      /bin/bash
      /bin/bash
  • 2.找出/etc/rc.d/init.d/functions文件中某個單詞后面跟一組小括號的行,形如:hello()

    [root@localhost ~]# cat /etc/rc.d/init.d/functions|grep -o "[[:alpha:]]\+\>()"
     checkpid()
     checkpids()
     kill()
     run()
     pidof()
     daemon()
     killproc()
     pidfileofproc()
     pidofproc()
     status()
     success()
     failure()
     passed()
     warning()
     stage()
     success()
     failure()
     passed()
     warning()
     action()
     strstr()
     file()
     true()
     false()
     sysctl()
  • 3.使用echo命令輸出一個絕對路徑,使用grep取出其基名;擴展,取出其路徑名

    [root@localhost ~]# echo "/etc/rc.d/init.d/functions"|grep -o  "[^\/]\+\/\?$"
     functions
    [root@localhost ~]# echo "/etc/rc.d/init.d/functions"|grep -o  "^\/[^[:space:]]\+\/"
     /etc/rc.d/init.d/
  • 4.找出ifconfig命令結果中1-255之間的數字

    [root@localhost ~]# ifconfig|grep  -E  -o "([1-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])"
    33
    41
    63
    150
    192
    168
    91
    128
    255
    255
    255
    192
    168
    91
    255
    6
    80
  • 5.挑戰題:寫一個模式,能匹配合理的IP地址

    [root@localhost ~]# ifconfig|grep  -E  -o "([1-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])\.([1-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])\.([1-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])\.([1-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])"
     192.168.91.128
     192.168.91.255
     192.168.122.1
     192.168.122.255
  • 6.挑戰題:寫一個模式,能匹配所有的郵件地址

    [root@localhost ~]# echo "1234567nn@163.com"|grep -o "[[:alnum:]]\+@[[:alnum:]]\+\.[[:alpha:]]\+"
     1234567nn@163.com
  • 7.查找/var目錄下屬主為root,且屬組為mail的所有文件或目錄

    [root@localhost ~]# find /var -user root -a -group mail -ls
     67292968    0 drwxrwxr-x   2 root     mail          129 Jul 28 18:28 /var/spool/mail
  • 8.查找當前系統上沒有屬主或屬組的文件;進一步查找當前系統上沒有屬主或屬組,且最近3天內曾經被訪問過的文件或目錄

    [root@localhost ~]# find / -nouser  -a -nogroup  -ls
    [root@localhost ~]# find / -nouser  -a -nogroup -a -atime -3  -ls
  • 9.查找/etc目錄下所有用戶都有寫權限的文件

    [root@localhost ~]# find /etc -perm -222 -ls
     33554500    0 lrwxrwxrwx   1 root     root           17 Jun 30 01:53 /etc/mtab -> /proc/self/mounts
     35553953    0 lrwxrwxrwx   1 root     root           56 Jun 30 02:10 /etc/fonts/conf.d/65-0-lohit-marathi.conf -> /usr/share/fontconfig/conf.avail/65-0-lohit-marathi.conf
     33722185    0 lrwxrwxrwx   1 root     root           56 Jun 30 01:57 /etc/fonts/conf.d/59-liberation-mono.conf -> /usr/share/fontconfig/conf.avail/59-liberation-mono.conf
     35553954    0 lrwxrwxrwx   1 root     root           59 Jun 30 02:10 /etc/fonts/conf.d/65-0-lohit-devanagari.conf -> /usr/share/fontconfig/conf.avail/65-0-lohit-devanagari.conf
     33722192    0 lrwxrwxrwx   1 root     root           56 Jun 30 01:57 /etc/fonts/conf.d/59-liberation-sans.conf -> /usr/share/fontconfig/conf.avail/59-liberation-sans.conf
     35553957    0 lrwxrwxrwx   1 root     root           54 Jun 30 02:11 /etc/fonts/conf.d/66-ucs-miscfixed.conf -> /usr/share/fontconfig/conf.avail/66-ucs-miscfixed.conf
     33735545    0 lrwxrwxrwx   1 root     root           59 Jun 30 01:57 /etc/fonts/conf.d/10-scale-bitmap-fonts.conf -> /usr/share/fontconfig/conf.avail/10-scale-bitmap-fonts.conf
     35553958    0 lrwxrwxrwx   1 root     root           50 Jun 30 02:11 /etc/fonts/conf.d/60-open-sans.conf -> /usr/share/fontconfig/conf.avail/60-open-sans.conf
  • 10.查找/etc目錄下大于1M,且類型為普通文件的所有文件

    [root@localhost ~]# find /etc -size +1M -a -type f -ls
     102108754 1364 -rw-r--r--   1 root     root      1394978 Jul  9 05:37 /etc/selinux/targeted/contexts/files/file_contexts.bin
     68163210 3620 -rw-r--r--   1 root     root      3703887 Jul  9 05:37 /etc/selinux/targeted/policy/policy.30
     68163206 3620 -rw-r--r--   1 root     root      3703887 Jul  9 05:37 /etc/selinux/targeted/active/policy.kern
     68112876 7120 -r--r--r--   1 root     root      7289802 Jul  9 05:33 /etc/udev/hwdb.bin
     34410868 1336 -rw-r--r--   1 root     root      1367395 Nov  5  2016 /etc/brltty/zh-tw.ctb

原創文章,作者:N27_xiaoni,如若轉載,請注明出處:http://www.www58058.com/83022

(0)
N27_xiaoniN27_xiaoni
上一篇 2017-07-30
下一篇 2017-07-30

相關推薦

  • 用戶和組相關的配置文件總結

    包括:/etc/passwd,/etc/shadow,/etc/group,/etc/gshadow,/etc/login.defs,/etc/dufaults/useradd,/etc/skel/.*,/etc/gdm/custom.conf,   /etc/passwd 用戶信息庫文件;用于保存用戶賬號信息; 各字段含義依次為: 用戶名:用戶密…

    Linux干貨 2016-10-25
  • Nginx之ngx_http_fastcgi_module模塊詳解

    一、ngx_http_fastcgi_module模塊:       nginx支持FastCGI模式       CGI:Common GateWay Interface 公共網管接口,可以理解其為HTTP服務器與其他主機上運行的程序進行通信的接口。       CG…

    2017-06-25
  • 軟件包管理和磁盤管理

    軟件運行和編譯 ABI :Application Binary Interface 應用程序二進制接口     Windows和Linux不兼容      PE格式   ELF格式 庫級別的虛擬化:       Linu…

    2017-04-24
  • 網絡管理

    1、集線器、交換機、路由器 2、路由器與交換機的主要區別體現在以下幾個方面: 1)工作層次不同:最初的的交換機是工作在OSI/RM開放體系結構的數據鏈路層,也就是第二層,而路由器一開始就設計工作在OSI模型的網絡層。由于交換機工作在OSI的第 二層(數據鏈路層),所以它的工作原理比較簡單,而路由器工作在OSI的第三層(網絡層),可得到更多的協議信息,路由器可…

    Linux干貨 2016-09-08
  • Linux 第二天: (07月22日) Linux入門

    Linux 第二天: (07月22日) Linux入門       root管理員帳戶,超級用戶,除非必要,不要用root登錄 /dev/console 物理終端/dev/tty 虛擬終端, CentOS 6默認6個虛擬終端/dev/pts 模擬終端tty 查看當前終端設備     GUI 圖形用戶界面 GN…

    Linux干貨 2016-08-08
  • 硬鏈接與軟鏈接

    硬連接:          其本質就是:一個文件,多個名字。注意:目錄是沒有硬鏈接的。 用ln filename linkname創建硬鏈接,注意源文件和鏈接文件位置順序,硬鏈接不可以跨分區建。 在創建硬鏈接時會增加硬連接數,可以通過ls –l查看,如下圖所示的,可看到硬鏈接數?!?/p>

    2017-07-20

評論列表(1條)

  • 馬哥教育
    馬哥教育 2017-08-04 16:15

    文本管理工具是非常重要的一項技能,從作業情況來看,掌握的還不錯,繼續努力。

欧美性久久久久