馬哥教育網絡班20期+第5周課程練習

1、顯示/boot/grub/grub.conf中以至少一個空白字符開頭的行;

    grep "^[[:space:]]\+.*" /boot/grub/grub.conf

2、顯示/etc/rc.d/rc.sysinit文件中以#開頭,后面跟至少一個空白字符,而后又有至少一個非空白字符的行;

    grep "^#[[:space:]][^[:space:]]\+" /etc/rc.d/rc.sysinit

3、打出netstat -tan命令執行結果中以‘LISTEN’,后或跟空白字符結尾的行;

    netstat -tan  | grep "LISTEN[[:space:]]$"

4、添加用戶bash, testbash, basher, nologin (此一個用戶的shell為/sbin/nologin),而后找出當前系統上其用戶名和默認shell相同的用戶的信息;

    useradd bash
    useradd testbash
    useradd basher 
    useradd -s /sbin/nologin
    grep "/sbin/nologin" /etc/passwd

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

    grep -E "^(root|fedora|user1)\>" /etc/passwd |cut -d: -f7

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

    grep "\<.*\>()" /etc/rc.d/init.d//functions

7、使用echo命令輸出一個絕對路徑,使用grep取出其基名;
    擴展:取出其路徑名

    echo "/etc/rc.d/init.d/mysqld" | grep   "[^/]\+$" | cut -d "/" -f5
    echo "/etc/rc.d/init.d/mysqld/" | sed 's@[^/]\+/\?$@@'

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

    ifconfig | grep -o "[0-9][0-9]\?[0-9]\?"

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

    grep -E "([1-9][1-9][0-9] | 1[0-9][0-9] | 2[0-3][0-9])\.([0-9][1-9][0-9] | 1[0-9][0-9] | 2[0-4][0-9] | 25[0-5])
\.([0-9][1-9][0-9] | 1[0-9][0-9] | 2[0-4][0-9] | 25[0-5])\.([0-9][1-9][0-9] | 1[0-9][0-9] | 2[0-4][0-9] | 25[0-5])\./>"

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

    grep ^[a-zA-Z0-9_-]*@[A-Za-z0-9_-]*\.[a-zA-Z_-]*$  emil.sh

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

    ll -a /var/ | grep 'root mail'

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

    find -nouser:查找沒有屬主的文件
         -nogroup:查找沒有屬組的文件

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

    find -nouser -atime -3
    find -nogroup -atime -3

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

    find /etc -perm /222

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

    find /etc -size +1M -type f

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

    find /etc/init.d -perm -113

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

    find /usr -not \( -user root -o -user bin -o -user hadoop \)

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

    find /etc/ -not -perm /222

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

    find /etc/ -mtime -7 -a -not \( -user root -o -user hadoop \)

原創文章,作者:Net20_赤羽,如若轉載,請注明出處:http://www.www58058.com/21841

(0)
Net20_赤羽Net20_赤羽
上一篇 2016-07-07
下一篇 2016-07-07

相關推薦

  • 設定Linux自動登陸

    設定Linux自動登陸 在實驗場景中我們可能會經常重新啟動Linux,然后反復輸入賬戶密碼登陸。為了在每次啟動后快速進入系統減少在實驗場景中不必要的工作,我們可以設定Linux在啟動后自動登陸到指定賬戶(實驗中一般為root賬戶)?;贚inux一切皆文件的思想,我們可以通過修改配置文本的方式決定是否啟用自動登錄,以及自動登錄的賬戶是普通用戶賬戶還是root…

    Linux干貨 2017-07-15
  • TCP/IP協議三次握手與四次握手流程解析

    一、TCP報文格式TCP/IP協議的詳細信息參看《TCP/IP協議詳解》三卷本。下面是TCP報文格式圖:   圖1 TCP報文格式上圖中有幾個字段需要重點介紹下:(1)序號:Seq序號,占32位,用來標識從TCP源端向目的端發送的字節流,發起方發送數據時對此進行標記。(2)確認序號:Ack序號,占32位,只有ACK標志位為1時,確認序號字段才有效,…

    2018-05-06
  • shell腳本——條件性執行操作符

    linux的shell腳本中條件性操作符包括:“&&“” ,“||” ?兩種。 1.&& 代表條件性的AND THEN。(短路與) 2.|| 代表條件性的OR ELSE。(短路或) 釋例1:短路與(&&) (1) ? ? ? ? ? ?cmd1 && cmd2 假設1:cmd1為true(1),…

    2018-08-05
  • Cobbler簡單部署小結

     Cobbler 和 koan 的安裝源:        ubuntu(12.04)的源:             注: Ubuntu的可用源可從這里查詢:http://wiki.ubuntu.org.cn/Template:12.04source …

    Linux干貨 2016-03-20
  • MySQL流程函數

    MySQL流程函數 IF(value,x y) 如果value是真,返回x,否則返回y MariaDB [learn]> INSERT INTO salary(sal) VALUES (1000),(2000),(3000),(4000),(5000),(6000),(NULL); Query OK, 7 rows affected (0.06 sec…

    Linux干貨 2017-05-02
  • linux【管道命令 PIPE】選取命令、排序命令、雙向從定向、比較工具

    linux【管道命令 PIPE】選取命令、排序命令、雙向從定向、比較工具 選取命令【cut,grep】 cut:可將一段信息的某一段‘切’出來。處理信息時使用以‘行’為單位。 cut -d ‘分割字符’ -f fields 用于分割字符 cut -c 字符范圍 用于排列整齊的信息 參數: -d:后面接分隔字符,與-f一起使用 -f:以及-d的分割字符將一段信…

    Linux干貨 2017-04-04

評論列表(1條)

  • 馬哥教育
    馬哥教育 2016-07-07 11:32

    寫的很好,排版也很棒,加油

欧美性久久久久