馬哥教育網絡班21期-第5周課程練習

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

      grep ‘^[[:space:]]\{1,\}’ /boot/grub/grub.conf

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

      grep ‘^[[:space:]]\+[[:alnum:]]\+’ /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 nologin -s /sbin/nologin

      egrep “^([[:alnum:]]+)\>.\1$” /etc/passwd

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

      grep ‘^\(root\|fedora\|user1\):’ /etc/passwd | cut -d: -f1,7

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

      grep '[[:alpha:]]\+()' /etc/rc.d/init.d/functions

 

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

echo /etc/rc.d | grep -o '^.*[^/]' | grep -o '/[^/]\+/\?$'

擴展:取出其路徑名

echo '/etc/rc.d' | grep -o '^.*[^/]' | grep -o '^.*/'

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

ifconfig | grep -E -o "\<([1-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])\>"

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

 

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

grep -E -o '\<[[:alnum:]]+@[[:alnum:]]+\.[[:alnum:]]+\>'

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

      find /var -user root -a -group mail

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

      find / -nouser -o -nogroup

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

find / -nouser -o -nogroup -a -atime 3

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

      find /etc/ -perm +222

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

      find /etc/ -type f -a -size +1M

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

      find /etc/init.d -perm -115

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

      find /usr ! -user root ! -user bin ! -user hadoop

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

find /etc/ -perm -222

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

      find /etc -ctime -7 ! -user root ! -user hadoop

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

(0)
kfkf
上一篇 2016-12-18
下一篇 2016-12-18

相關推薦

  • 關于大型網站技術演進的思考(四):存儲的瓶頸(4)

    原文出處: 夏天的森林    如果數據庫需要進行水平拆分,這其實是一件很開心的事情,因為它代表公司的業務正在迅猛的增長,對于開發人員而言那就是有不盡的項目可以做,雖然會感覺很忙,但是人過的充實,心里也踏實。 數據庫水平拆分簡單說來就是先將原數據庫里的一張表在做垂直拆分出來放置在單獨的數據庫和單獨的表里后更進一步的把本來是一個整體…

    2015-03-11
  • LVS-幾種負載方式的區別

    LVS的原理很重要,很重要。每一個知識點都要做到熟記與腦,謹記于心,張口就來。 LVS是Linux Virtual Server的簡寫,意即Linux虛擬服務器,是一個虛擬的服務器集群系統。本項目在1998年5月由章文嵩博士成立,是中國國內最早出現的自由軟件項目之一。 使用集群技術和Linux操作系統實現一個高性能、高可用的服務器. 很好的可伸縮性(Scal…

    Linux干貨 2017-05-11
  • man和history及bashi的快捷鍵

    man:幫助命令     命令格式:man# cmd;使用時可以先使用whatis 查詢所對應的man的章節,然后用對應的man章節來查詢幫助;     info:本地幫助文檔     官方文檔,在線查詢等等,如果是付費版系統的話可以使用S…

    Linux干貨 2016-07-29
  • 學習宣言

    我的人生宣言:做人要學到老,活到老,最重要的玩到老啊。人的一生真的太短了,要做我們喜歡的事情,趁自己年輕的時候吧!行動吧!加油??!

    Linux干貨 2016-12-26
  • 用戶權限管理

    描述: 用戶在系統上的操作受到權限的約束,例如對文件或者目錄進行查看、修改、復制、刪除等操作時,由文件或者目錄對應的操作的權限所決定的。 在root的家目錄下創建一個普通文件和目錄并查看其屬性: [root@localhost ~]# echo 123 > file1 [root@localhost&n…

    Linux干貨 2016-08-04
  • bash腳本編程之算術運算和文件查找

    算數運算在每個編程語言里面是最基本的功能,在bash里面也是.相對于其他編程語言來說在bash里面不能直接以變量加上變量的形式來表現;比如我們先聲明兩個變量num1和num2然后再做運算。 num1=2 num2=3 echo "$num1+$num2" 2+3 這里我們顯示的結果直接為2+3只是做了變量的替換,而不是做兩個變量…

    Linux干貨 2016-12-23
欧美性久久久久