文本處理工具練習題(包含正則)

正則練習題(包含文本處理練習題)

問題

  1. 找出ifconfig命令結果中本機的所有IPv4地址 

  2. 查出分區空間使用率的最大百分比值

  3. 查出用戶UID最大值的用戶名、UID及shell類型

  4. 查出/tmp的權限,以數字方式顯示

  5. 統計當前連接本機的每個遠程主機IP的連接數,并按從大 到小排序

答;

  1. ifconfig | grep -o '[0-9]\{1,3\}\.[0-9]\{1,3\}\.[0-9]\{1,3\}\.[0-9]\{1,3\}'

  2. df -h | tr -s ' ' ':' | cut -d : -f 5 | cut -d '%' -f1

  3. cat /etc/passwd | sort -t : -k3n | cut -d : -f1,3,6 | tail -n 1

  4. stat /tmp/ | tr -s ' ' ':' | cut -d : -f 2 | grep ^'(' | grep -o [0-9][0-9][0-9][0-9]或者 stat /tmp |head -4|tail -1 |tr "/" "("|cut -d "(" -f2

  5.  netstat -nt | grep  tcp | tr -s " " ";" | cut -d ";" -f5 | uniq -c | sort -n

問題

  1. 顯示/proc/meminfo文件中以大小s開頭的行;(要求:使 用兩種方式)

  2. 顯示/etc/passwd文件中不以/bin/bash結尾的行

  3. 顯示用戶rpc默認的shell程序

  4. 找出/etc/passwd中的兩位或三位數

  5. 顯示/etc/grub2.cfg文件中,至少以一個空白字符開頭的 且后面存非空白字符的行

  6. 找出“netstat -tan”命令的結果中以‘LISTEN’后跟任意多 個空白字符結尾的行

  7. 添加用戶bash、testbash、basher以及nologin(其shell為 /sbin/nologin),而后找出/etc/passwd文件中用戶名同shell名 的行 

答:

  1. cat /proc/meminfo | grep -i ^s或者 grep ^[sS]

  2. cat /etc/passwd | grep -v "/bin/bash"

  3. cat /etc/passwd | grep -w rpc | cut -d : -f 7

  4. cat /etc/passwd | grep -n '[0-9]\{2,3\}'

  5. cat /etc/grub2.cfg | grep "^[[:space:]]\{1,\}.\{1,\}"

  6. netstat -tan | grep 'LISTEN[[:space:]]*$'

  7. grep -n '^\(\b[[:alnum:]]\{1,\}\b\):.*\1$' /etc/passwd  或者grep -n '^\(\b.*\{1,\}\b\):.*\1$' /etc/passwd

問題

  1. 顯示三個用戶root、mage、wang的UID和默認shell

  2. 找出/etc/rc.d/init.d/functions文件中行首為某單詞(包 括下劃線)后面跟一個小括號的行

  3. 使用egrep取出/etc/rc.d/init.d/functions中其路徑基名

  4. 使用egrep取出上面路徑的目錄名  

  5. 利用擴展正則表達式分別表示0-9、10-99、100-199、 200-249、250-255

  6. 顯示ifconfig命令結果中所有IPv4地址

答:

  1. cat /etc/passwd | egrep '^\b(root|user1|user2)\b' | cut -d : -f 1,3,7

  2. cat /etc/rc.d/init.d/functions | grep -n -w "^.*()" 或者 egrep -n '^(\b(\w{1,})\b)\(\)' /etc/rc.d/init.d/functions

  3. echo "/etc/rc.d/init.d/functions" | egrep -o "[^/]+/?$"

  4.  echo "/etc/rc.d/init.d/functions" | egrep -o '^(/)\b.*\1\b'

  5. egrep [0-9]|[0-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5]

  6. ifconfig | egrep -o '[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}'

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

(0)
forestforest
上一篇 2016-08-08 16:04
下一篇 2016-08-08 16:04

相關推薦

  • Hadoop實戰實例

     Hadoop 是Google MapReduce的一個Java實現。MapReduce是一種簡化的分布式編程模式,讓程序自動分布到一個由普通機器組成的超大集群上并發執行。就如同java程序員可以不考慮內存泄露一樣, MapReduce的run-time系統會解決輸入數據的分布細節,跨越機器集群的程序執行調度,處理機器…

    Linux干貨 2015-04-13
  • Nginx相關實戰案例

    Nginx相關實戰案例: Nginx在實際生產中極為重要,先來看一下Nginx配置文件nginx.conf中文詳解 #定義Nginx運行的用戶和用戶組 user www www; #nginx進程數,建議設置為等于CPU總核心數。 worker_processes 8; #全局錯誤日志定義類型,[ debug | info | notice | warn |…

    Linux干貨 2017-06-19
  • 網絡26期 第五周作業

    1. 顯示當前系統上root、fedora或user1用戶的默認shell egrep -o “^(root|fedora|user1)\>.*[^:]+$” /etc/passwd | cut -d: -f1,7 2. 找出/etc/rc.d/init.d/functions文件中某單詞后面跟一組小括號的行,形如:hello(…

    2017-03-13
  • Nginx相關配置及其應用

    LB Cluster: 傳輸層:lvs、nginx、haproxy 應用層:nginx(http, https, smtp, pop, imap), haproxy(http), httpd(http/https), ats, perlbal, pound, … nginx load balancer: tcp/udp   nginx …

    Linux干貨 2016-11-11
  • Python修飾器的函數式編程

    Python的修飾器的英文名叫Decorator,當你看到這個英文名的時候,你可能會把其跟Design Pattern里的Decorator搞混了,其實這是完全不同的兩個東西。雖然好像,他們要干的事都很相似——都是想要對一個已有的模塊做一些“修飾工作”,所謂修飾工作就是想給現有的模塊加上一些小裝飾(一些小功能,這些小功能可能好多模塊都會用到),但又不讓這個小…

    Linux干貨 2016-08-15
  • N21_第8周_網絡

    N21_第8周_網絡 作業題目: 1、請描述網橋、集線器、二層交換機、三層交換機、路由器的功能、使用場景與區別。     網橋:(Bridge)也稱橋接器,是連接兩個局域網的存儲轉發設備,用它可以完成具有相同或相似體系結構網絡系統的連接。       &nbs…

    Linux干貨 2016-10-09
欧美性久久久久