1、創建目錄/data/oldboy,並且在該目錄下創建文件oldboy.txt,然後在文件oldboy.txt裡寫入內容“inet addr:192.168.8.10 Bcast:192.168.8.255 Mask:255.255.255.0”(不包含引號)。解答:
[root@oldboy ~]#mkdir -p /data/oldboy [root@oldboy ~]# ls -d /data/oldboy/ /data/oldboy/ [root@oldboy ~]#touch /data/oldboy/oldboy.txt [root@oldboy ~]# ls-l /data/oldboy/oldboy.txt -rw-r--r--. 1 rootroot 0 May 1 21:06/data/oldboy/oldboy.txt [root@oldboy ~]#echo "inet addr:192.168.8.10 Bcast:192.168.8.255 Mask:255.255.255.0" >/data/oldboy/oldboy.txt [root@oldboy ~]#cat /data/oldboy/oldboy.txt inetaddr:192.168.8.10 Bcast:192.168.8.255 Mask:255.255.255.02、將題1中的oldboy.txt文件內容通過命令過濾只輸出如下內容: 192.168.8.10 192.168.8.255 255.255.255.0解答:awk方法
[root@oldboy ~]#awk -F '[ :]+' '{print $3" "$5" "$7}'/data/oldboy/oldboy.txt 192.168.8.10192.168.8.255 255.255.255.0sed方法
[root@oldboy ~]# sed -n 's@^.*addr:\(.*\)Bcast:\(.*\) Mask:\(.*\)@\1 \2 \3@gp' /data/oldboy/oldboy.txt 192.168.8.10 192.168.8.255 255.255.255.0
3、將題1中的oldboy目錄移動到/tmp目錄下,並將/etc/passwd文件復制到/tmp/oldboy下。解答:
[root@oldboy ~]# cd/data/ [root@oldboy data]#cp -a oldboy /tmp [root@oldboy data]#cp /etc/passwd /tmp/oldboy/ [root@oldboy data]#ls -l /tmp/oldboy/ total 8 -rw-r--r--. 1 rootroot 64 May 1 21:12 oldboy.txt -rw-r--r--. 1 rootroot 1056 May 1 21:32 passwd4、在題3的基礎上使用awk取passwd文件的第10行到20行的第三列重定向到/tmp/oldboy/test.txt文件裡。解答:
[root@oldboy data]#cd /tmp/oldboy/ [root@oldboyoldboy]# awk -F ":" 'NR>9&&NR<21{print $3}' passwd>test.txt [root@oldboyoldboy]# cat -n test.txt 1 10 2 11 3 12 4 13 5 14 6 99 7 81 8 69 9 173 10 68 11 38
5、在題3的基礎上要求用命令rm刪除文件時提示如下禁止使用rm的提示,並使該效果永久生效。[root@oldboyoldboy]#rm –f passwdDo not userm command.解答:
[root@oldboy ~]#echo " alias rm='echo "Do not use rm command."' ">>/etc/profile [root@oldboy ~]# [root@oldboy ~]# [root@oldboy ~]#tail -1 /etc/profile alias rm='echo Do not use rm command.' [root@oldboy ~]#source /etc/profile [root@oldboy ~]# rm-f * Do not use rmcommand. -f anaconda-ks.cfg install.log.syslog6、在題3的基礎上,刪除/tmp/oldboy/下除passwd以外的其他文件。解答:
[root@oldboyoldboy]# ls oldboy.txt passwd test.txt [root@oldboyoldboy]# rm oldboy.txt test.txt [root@oldboyoldboy]# find ./ -type f ! -namepasswd|xargs rm -f [root@oldboyoldboy]# ls passwd
7、在題3的基礎上,請打印/etc/passwd文件中的第2—5行(不低於三種方法)解答:法一
[root@oldboyoldboy]# head -5 passwd |tail -4 bin:x:1:1:bin:/bin:/sbin/nologin daemon:x:2:2:daemon:/sbin:/sbin/nologin adm:x:3:4:adm:/var/adm:/sbin/nologin lp:x:4:7:lp:/var/spool/lpd:/sbin/nologin法二
[root@oldboyoldboy]# sed -n 2,5p passwd bin:x:1:1:bin:/bin:/sbin/nologin daemon:x:2:2:daemon:/sbin:/sbin/nologin adm:x:3:4:adm:/var/adm:/sbin/nologin lp:x:4:7:lp:/var/spool/lpd:/sbin/nologin
法三
[root@oldboyoldboy]# awk 'NR>1&&NR<6{print $0}' passwd bin:x:1:1:bin:/bin:/sbin/nologin daemon:x:2:2:daemon:/sbin:/sbin/nologin adm:x:3:4:adm:/var/adm:/sbin/nologin lp:x:4:7:lp:/var/spool/lpd:/sbin/nologin8、在題3的基礎上,使用命令調換passwd文件裡root位置和/bin/bash位置?即將所有的第一列和最後一列位置調換?默認:root:x:0:0:root:/root:/bin/bash修改後:/bin/bash:x:0:0:root:/root:root
[root@oldboyoldboy]# head -1 passwd|sed -n's@\(.*\):x:0:0:root:/root:\(.*\)@\2:x:0:0:root:/root:\1@gp' /bin/bash:x:0:0:root:/root:root
9、把/data目錄及子目錄下所以以擴展名.txt結尾的文件中包含oldgirl的字符串全部替換為oldboy。解答:模擬數據
[root@oldboy data]#echo oldboy >a.log [root@oldboy data]#echo oldboy >b.log [root@oldboy data]#echo old >c.log替換
[root@oldboy data]#find ./ -type f -name "*.log"|xargs sed -i 's@oldboy@oldgirl@g' [root@oldboy data]#cat a.log b.log c.log oldgirl oldgirl old10、查找/data/oldboy下所有7天以臆以log結尾的大於1M的文件移動/tmp下
解答:模擬數據
[root@oldboy oldboy]# ls -lh total 5.3M -rw-r--r--. 1 root root 0 Apr 20 00:00 2016-04-20-1.log -rw-r--r--. 1 root root 1.8M Apr 20 00:04 2016-04-20.log -rw-r--r--. 1 root root 1.8M Apr 28 00:00 2016-04-28.log -rw-r--r--. 1 root root 1.8M May 3 16:58 2016-05-03.log -rw-r--r--. 1 root root 64 May 1 21:12 oldboy.txt操作
[root@oldboy oldboy]# find ./ -type f -mtime +7 -a -size +1M -exec mv '{}' /tmp \; [root@oldboy oldboy]# ls 1M 2016-04-20-1.log 2016-04-28.log 2016-05-03.log oldboy.txt [root@oldboy oldboy]# ls -lh /tmp/ total 1.8M -rw-r--r--. 1 root root 1.8M Apr 20 00:04 2016-04-20.log11、什麼是linux的運行級別,請描述linux的運行級別不同數字的含義?(附加題)Linux運行級別
啟動系統的級別,類似於windows的安全模式,帶網絡的安全模式等等,有多種啟動模式0-6.
Linux0-6的啟動含義
運行級別0:關機
運行級別1:單用戶工作狀態,root權限,用於系統維護,禁止遠程登陸
運行級別2:多用戶狀態(沒有NFS)
運行級別3:完全的多用戶狀態(有NFS),登陸後進入控制台命令行模式(常用)
運行級別4:保留
運行級別5:X11控制台,登陸後進入圖形GUI模式
運行級別6:重啟
12、請描述buffer和cache的區別?(附加題)buffer是即將要被寫入磁盤的,而cache是被從磁盤中讀出來的。
13、請說出你知道的下列字符在linux裡可以代表的意義。(附加題)~ - . .. | > >> < << !
~ :家目錄
- :上次目錄
. :當前目錄
.. :上級目錄
| :管道
> :標准輸出重定向
>> :標准輸出追加重定向
< :標准輸入重定向
<< :標准輸入追加重定向
! :非
本文出自 “技術隨筆” 博客,請務必保留此出處http://ievan.blog.51cto.com/11177578/1769759