Linux基礎知識(五)

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

[root@server01 ~]# cat /etc/passwd | grep –color=auto -E "^root|fedora|user1" | cut -d : -f 1,7

2、找出/etc/rc.d/init.d/functions文件中某單詞后面跟一組小括號的行,形如hello()

[root@server01 ~]# cat /etc/rc.d/init.d/functions | grep –color=auto -E "\<[a-z]*\>\(\)"

3、使用echo命令輸出一個絕對路徑,使用grep取出其基名

方法一:

(1)[root@server01 ~]# echo "/var/log/messages" | grep -E -o "[a-z]*$|[a-z0-9]*[^/][a-z0-9]*$"

(2)[root@server01 ~]# echo "/etc/sysconfig/network-scripts/ifcfg-eth0" | grep -E -o "[a-z]*$|[a-z0-9]*[^/][a-z0-9]*$"

(3)[root@server01 ~]# echo "/var/log/anaconda.log" | grep -E -o "[a-z]*$|[a-z0-9]*[^/][a-z0-9]*$"

取路徑名(自行練習的):

(1)[root@server01 Packages]# echo "/var/lib/postfix/master.lock" | grep -E -o "^[/].*[/]"

(2)[root@server01 ~]# echo "/etc/sysconfig/network-scripts/ifcfg-eth0" | grep -E -o "^[/].*[/]"

4、找出ifconfig命令結果中的1-255之間的數字

[root@bogon ~]# ifconfig | grep –color=auto -E -o "[1-9]|[1-9][0-9]|[1][0-9]{2}|[2][0-5]{3}"

5、挑戰題:寫一個模式,能匹配合理的IP地址

[root@bogon ~]# ifconfig | grep –color=auto -E -o "\<([1-9]|[1-9][0-9]|[1][0-9]{2}|[2][0-1][0-9]|22[0-3])[\.](([0-9]|[1-9][0-9]|[1][0-9]{2}|[2][0-5]{2})[\.]){2}([1-9]|[1-9][0-9]|[1][0-9]{2}|[2][0-5][0-4])\>"

6、挑戰題:寫一個模式,能匹配所有的郵件地址

[root@server01 ~]# cat mail.txt | grep -o –color=auto -E "\<[^0-9][[:alnum:]]{3,20}[@][[:alnum:]].*[.]([a-z]{3}[.][a-z]{2}|[a-z]{3})\>"

7、查找/var目錄下屬主為root,且屬組為mail的所有文件或目錄

[root@server01 ~]# find /var -user root -a -group mail -ls

8、查找當前系統上沒有屬主或屬組的文件

[root@server01 ~]# find / -nouser -o -nogroup -ls

進一步:查找當前系統上沒有屬主或屬組,且最近3天內曾被訪問過的文件或目錄

[root@server01 ~]# find / -nouser -a -nogroup -a -atime -3 -ls

9、查找/etc目錄下所有用戶都有寫權限的文件

[root@server01 ~]# find /etc/ -perm -222 -ls

10、查找/etc目錄下大于1M,且類型為普通文件的所有文件

[root@server01 ~]# find /etc/ -type f -size +1M -exec ls -lh {} \;

11、查找/etc/init.d/目錄下,所有用戶都有執行權限,且其他用戶有寫權限的文件

[root@server01 ~]# find /etc/init.d/ -perm -111 -a -perm -002 -ls

12、查找/usr目錄下不屬于root、bin或hadoop的文件

方法一:[root@server01 usr]# find /usr -not -user root -a -not -user bin -a -not -user hadoop -ls

方法二:[root@server01 usr]# find /usr -not \( -user root -o -user bin -o -user hadoop \) -ls

13、查找/etc目錄下至少有一類用戶沒有寫權限的文件

[root@server01 usr]# find /etc/ -not -perm -222 -ls

14、查找/etc目錄下最近一周內其內容被修改過,且不屬于root或hadoop的文件

[root@server01 usr]# find /etc/ -mtime -7 -a -not \( -user root -a -user hadoop \) -exec stat {} \; | grep "Modify:"

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

(0)
TornadoTornado
上一篇 2016-10-25
下一篇 2016-10-25

相關推薦

  • Linux之bash shell腳本編程入門篇(二)以及文件查找和壓縮的使用

    bash shell腳本編程入門篇(二) read命令的使用 作用:     使用read來把輸入值分配給一個或多個shell變量:         -p指定要顯示的提示      &nbs…

    Linux干貨 2016-08-18
  • Linux的獲取系統的幫助信息及man文檔說明

    Linux的獲取系統的幫助信息及man文檔說明 幫助命令有內部命令幫助和外部命令幫助兩種 內部命令獲得幫助使用下面命令 # help COMMAND 例如: [root@localhost ~]# type type type is a shell builtin [root@localhost ~]# help type type: type [-afpt…

    2018-02-28
  • Linux發行版的基礎目錄名稱命名法則及功用規定

    [root@localhost /]# tree -L 1. <—-> 為 / 符號,所有文件的根目錄;├── bin -> usr/bin <—-> 所有用戶可用的基本命令程序文件;├── boot <—-> 引導加載器必須用到的各靜態文件:kernel,initramfs(in…

    2018-02-28
  • 第八周作業(網絡、bash腳本)

    1-3,計算機網絡基礎博客已總結,簡要補充 協議的分層 為了使那些比較復雜的網絡協議更加簡單化。ISO根據各通信協議的功能將網絡體系分成七層。 在這個分層中,下層為上一層提供服務。上下層之間進行交互時所遵循的約定叫做“接口”。同層之間的交互所遵循的約定叫做“協議” 說的更形象一點,兩個中國人打電話這個通信。就可以分為兩層,同層之間的叫協議,我說漢語,你也說漢…

    Linux干貨 2016-12-18
  • mariadb數據庫的主從復制

    mariadb的主從復制

    2018-02-27
  • 一起學WINS系列(二)安裝、配置

    原創作品,允許轉載,轉載時請務必以超鏈接形式標明文章 原始出處 、作者信息和本聲明。否則將追究法律責任。http://jeffyyko.blog.51cto.com/28563/159128  此系列第二節:安裝服務端、配置客戶端。          完整的WINS系統…

    Linux干貨 2015-03-25

評論列表(1條)

  • 馬哥教育
    馬哥教育 2016-10-27 13:10

    下次操作,記得將命令執行的結果或影響的行列出就更好了!

欧美性久久久久