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

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

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

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

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

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

# netstat -tan | grep -E "LISTEN[[:space:]]\+$"

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

#!/bin/bash
if [ `id -u` -ne 0 ];then
   echo "noly root can add user."
   exit 3
fi
for user in {bash,testbash,basher,nologin};do
    if id $user &> /dev/null;then
       echo "$user exits. "
    elif [ "$user" == "nologin" ];then
       useradd $user -s /sbin/nologin 
    else useradd $user 
    fi
done
grep -E --color "^([[:alnum:]]+)\>.*\1$"  /etc/passwd

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

#!/bin/bash
for i in (root,fedora,user1);do
    grep "^$i\>" /etc/passwd | cut -d: -f1,7
done

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

# grep -E "\b.*\b\(\)" /etc/rc.d/init.d/functions

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

#!/bin/bash
read -p "enter a path." pathfile
   [ -z "$pathfile" ] && echo "please enter a path." && exit 1
echo $pathfile > /tmp/pathfile
echo  basename is `grep -o "/[^/]\+/\?$" /tmp/pathfile`
echo  dirname is `grep -o "^/.*/" /tmp/pathfile`

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

# ifconfig | grep -E "\b[1-9]|[1-9][0-9]|1[0-9][0-9]|2[0-5][0-5]\b"

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

# grep  -Eo "\b(inet |addr:)([0-9]{1,3}.){3}[0-9]{1,3}\b"

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

# grep -Eo "[[:alnum:]]+[[:punct:]]*[[:alnum:]]*@[[:alnum:]]+.[[:alnum:]]*.?[[:alnum:]]*"

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

# find /var -user root -group mail

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

# find / -nouser -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 -prem -113

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

# find /usr -not (-user root -a -user bin -a hadoop)

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

# find /etc -not -perm -222

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

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

原創文章,作者:哎喲喂,如若轉載,請注明出處:http://www.www58058.com/30038

(0)
哎喲喂哎喲喂
上一篇 2016-08-08
下一篇 2016-08-08

相關推薦

  • keepalived的安裝和配置

    一、簡介 Keepalived是一個免費開源的,用C編寫的類似于layer3, 4 & 7交換機制軟件,具備我們平時說的第3層、第4層和第7層交換機的功能。主要提供loadbalancing(負載均衡)和 high-availability(高可用)功能,負載均衡實現需要依賴Linux的虛擬服務內核模塊(ipvs),而高可用是通過VRRP協議實現多臺…

    Linux干貨 2017-10-30
  • http請求過程

    1、瀏覽器根據訪問的域名找到其IP地址。DNS查找過程如下: 1.瀏覽器緩存:瀏覽器會緩存DNS記錄一段時間。 2.系統緩存:如果在瀏覽器緩存里沒有找到需要的域名,瀏覽器會查系統緩存中的記錄。 3.路由器緩存:如果系統緩存也沒找到需要的域名,則會向路由器發送查詢請求。 4.ISP DNS緩存:如果依然沒找到需要的域名,則最后要查的就是ISP緩存DNS的服務器…

    Linux干貨 2017-10-23
  • 馬哥教育網絡班22期+第13周課程練習

    1、建立samba共享,共享目錄為/data,要求:(描述完整的過程)   1)共享名為shared,工作組為magedu;   2)添加組develop,添加用戶gentoo,centos和ubuntu,其中gentoo和centos以develop為附加組,ubuntu不屬于develop組;密碼均為用戶名; &n…

    Linux干貨 2016-12-05
  • X-Y Problem

    X-Y Problem 對于X-Y Problem的意思如下: 1)有人想解決問題X2)他覺得Y可能是解決X問題的方法3)但是他不知道Y應該怎么做4)于是他去問別人Y應該怎么做? 簡而言之,沒有去問怎么解決問題X,而是去問解決方案Y應該怎么去實現和操作。于是乎: 1)熱心的人們幫助并告訴這個人Y應該怎么搞,但是大家都覺得Y這個方案有點怪異。2)在經過大量地討…

    Linux干貨 2016-08-15
  • 啟動流程排錯和自建linux系統

    一、grub的配置文件/boot/grub/grub.conf default=0        ###設置默認啟動項0表示第一個 timeout=5        ##設置超時時間,如果超過5s用戶…

    Linux干貨 2016-09-18

評論列表(1條)

  • 馬哥教育
    馬哥教育 2016-08-17 14:38

    寫的很好,排版也很棒,加油,匹配ip地址的不對

欧美性久久久久