生活随笔
收集整理的這篇文章主要介紹了
shell编程练习题
小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
求2個(gè)數(shù)之和計(jì)算1-100的和將一目錄下所有的文件的擴(kuò)展名改為bak編譯當(dāng)前目錄下的所有.c文件:打印root可以使用可執(zhí)行文件數(shù),處理結(jié)果: root's bins: 2306打印當(dāng)前sshd的端口和進(jìn)程id,處理結(jié)果: sshd Port&&pid: 22 5412輸出本機(jī)創(chuàng)建20000個(gè)目錄所用的時(shí)間,處理結(jié)果:real??? 0m3.367s
user??? 0m0.066s
sys???? 0m1.925s
打印本機(jī)的交換分區(qū)大小,處理結(jié)果: Swap:1024M文本分析,取出/etc/password中shell出現(xiàn)的次數(shù)第一種方法結(jié)果:
??? 4? /bin/bash
??? 1? /bin/sync
??? 1? /sbin/halt
??? 31 /sbin/nologin
??? 1? /sbin/shutdown
第二種方法結(jié)果:
/bin/sync?????? 1
/bin/bash?????? 1
/sbin/nologin?? 30
/sbin/halt????? 1
/sbin/shutdown? 1
文件整理,employee文件中記錄了工號(hào)和姓名, bonus文件中記錄工號(hào)和工資要求把兩個(gè)文件合并并輸出如下,處理結(jié)果:(提示join)400 ashok sharma $1,250
100 jason smith? $5,000
200 john doe? $500
300 sanjay gupta? $3,000
?
employee.txt:
100 Jason Smith
200 John Doe
300 Sanjay Gupta
400 Ashok Sharma
bonus.txt:
100 $5,000
200 $500
300 $3,000
400 $1,250
寫一個(gè)shell腳本來(lái)得到當(dāng)前的日期,時(shí)間,用戶名和當(dāng)前工作目錄。編寫shell腳本獲取本機(jī)的網(wǎng)絡(luò)地址。編寫個(gè)shell腳本將當(dāng)前目錄下大于10K的文件轉(zhuǎn)移到/tmp目錄下編寫一個(gè)名為myfirstshell.sh的腳本,它包括以下內(nèi)容。a) 包含一段注釋,列出您的姓名、腳本的名稱和編寫這個(gè)腳本的目的。
b) 問(wèn)候用戶。
c) 顯示日期和時(shí)間。
d) 顯示這個(gè)月的日歷。
e) 顯示您的機(jī)器名。
f) 顯示當(dāng)前這個(gè)操作系統(tǒng)的名稱和版本。
g) 顯示父目錄中的所有文件的列表。
h) 顯示root正在運(yùn)行的所有進(jìn)程。
i) 顯示變量TERM、PATH和HOME的值。
j) 顯示磁盤使用情況。
k) 用id命令打印出您的組ID。
m) 跟用戶說(shuō)“Good bye”
文件移動(dòng)拷貝,有m1.txt m2.txt m3.txt m4.txt,分別創(chuàng)建出對(duì)應(yīng)的目錄,m1 m2 m3 m4 并把文件移動(dòng)到對(duì)應(yīng)的目錄下。root用戶今天登陸了多長(zhǎng)時(shí)間終端輸入一個(gè)文件名,判斷是否是設(shè)備文件統(tǒng)計(jì)IP訪問(wèn):要求分析apache訪問(wèn)日志,找出訪問(wèn)頁(yè)面數(shù)量在前100位的IP數(shù)。日志大小在78M左右。以下是apache的訪問(wèn)日志節(jié)選202.101.129.218 - - [26/Mar/2006:23:59:55 +0800] "GET /online/stat_inst.php?pid=d065 HTTP/1.1" 302 20-"-" "-" "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1)"
設(shè)計(jì)一個(gè)Shell程序,在/userdata目錄下建立50個(gè)目錄,即user1~user50,并設(shè)置每個(gè)目錄的權(quán)限,其中其他用戶的權(quán)限為:讀;文件所有者的權(quán)限為:讀、寫、執(zhí)行;文件所有者所在組的權(quán)限為:讀、執(zhí)行。設(shè)計(jì)一個(gè)shell程序,添加一個(gè)新組為class1,然后添加屬于這個(gè)組的30個(gè)用戶,用戶名的形式為stdxx,其中xx從01到30,并設(shè)置密碼為對(duì)應(yīng)的stdxx。編寫shell程序,實(shí)現(xiàn)自動(dòng)刪除30個(gè)賬號(hào)的功能。賬號(hào)名為std01至std30。用戶清理,清除本機(jī)除了當(dāng)前登陸用戶以外的所有用戶設(shè)計(jì)一個(gè)shell程序,在每月第一天備份并壓縮/etc目錄的所有內(nèi)容,存放在/root/bak目錄里,且文件名,為如下形式y(tǒng)ymmdd_etc,yy為年,mm為月,dd為日。Shell程序fileback存放在/usr/bin目錄下。對(duì)于一個(gè)用戶日志文件,每行記錄了一個(gè)用戶查詢串,長(zhǎng)度為1-255字節(jié),共幾千萬(wàn)行,請(qǐng)排出查詢最多的前100條。 日志可以自己構(gòu)造> 。 (提示:awk sort uniq head)編寫自己的ubuntu環(huán)境安裝腳本編寫服務(wù)器守護(hù)進(jìn)程管理腳本。
轉(zhuǎn)載于:https://www.cnblogs.com/wanghao-boke/p/11568733.html
總結(jié)
以上是生活随笔為你收集整理的shell编程练习题的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
如果覺(jué)得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。