摘要:在學(xué)院11.11(全民IT學(xué)習(xí)節(jié))到來之際,和大家分享一下我的IT從業(yè)經(jīng)驗(yàn)。正文來啦~~~1 企業(yè)Shell面試題實(shí)戰(zhàn)案例1.1 企業(yè)Shell面試題1:批量生成隨機(jī)字符文件名案例使用for循環(huán)在/oldboy目錄下批量創(chuàng)建10個(gè)html文件,其中每個(gè)文件需要包含10個(gè)隨機(jī)小寫字母加固定字符串oldboy,名稱示例如下:[root@oldgirl C19]# ls /
在學(xué)院11.11(全民IT學(xué)習(xí)節(jié))到來之際,和大家分享一下我的IT從業(yè)經(jīng)驗(yàn)。正文來啦~~~
1 企業(yè)Shell面試題實(shí)戰(zhàn)案例
1.1 企業(yè)Shell面試題1:批量生成隨機(jī)字符文件名案例
使用for循環(huán)在/oldboy目錄下批量創(chuàng)建10個(gè)html文件,其中每個(gè)文件需要包含10個(gè)隨機(jī)小寫字母加固定字符串oldboy,名稱示例如下:
[root@oldgirl C19]# ls /oldboy apquvdpqbk_oldboy.html mpyogpsmwj_oldboy.html txynzwofgg_oldboy.html bmqiwhfpgv_oldboy.html mtrzobsprf_oldboy.html vjxmlflawa_oldboy.html jhjdcjnjxc_oldboy.html qeztkkmewn_oldboy.html jpvirsnjld_oldboy.html ruscyxwxai_oldboy.html
跟老男孩學(xué)Linux運(yùn)維:企業(yè)Shell面試題及企業(yè)運(yùn)維實(shí)戰(zhàn)案例
我是51CTO學(xué)院講師老男孩,在學(xué)院11.11(全民IT學(xué)習(xí)節(jié))到來之際,和大家分享一下我的IT從業(yè)經(jīng)驗(yàn)。
作者:51CTO學(xué)院來源:51CTO學(xué)院|2016-11-11 15:00
收藏
分享
【51CTO.com原創(chuàng)稿件】我是51CTO學(xué)院講師老男孩,在學(xué)院11.11(全民IT學(xué)習(xí)節(jié))到來之際,和大家分享一下我的IT從業(yè)經(jīng)驗(yàn)。正文來啦~~~
1 企業(yè)Shell面試題實(shí)戰(zhàn)案例
1.1 企業(yè)Shell面試題1:批量生成隨機(jī)字符文件名案例
使用for循環(huán)在/oldboy目錄下批量創(chuàng)建10個(gè)html文件,其中每個(gè)文件需要包含10個(gè)隨機(jī)小寫字母加固定字符串oldboy,名稱示例如下:
[root@oldgirl C19]# ls /oldboy apquvdpqbk_oldboy.html mpyogpsmwj_oldboy.html txynzwofgg_oldboy.html bmqiwhfpgv_oldboy.html mtrzobsprf_oldboy.html vjxmlflawa_oldboy.html jhjdcjnjxc_oldboy.html qeztkkmewn_oldboy.html jpvirsnjld_oldboy.html ruscyxwxai_oldboy.html
解答:
1.2 企業(yè)Shell面試題2:批量改名特殊案例
將以上面試題1.1中結(jié)果文件名中的oldboy字符串全部改成oldgirl(最好用for循環(huán)實(shí)現(xiàn)),并且將擴(kuò)展名html全部改成大寫。
解答:
1.3 企業(yè)Shell面試題3:批量創(chuàng)建特殊要求用戶案例
批量創(chuàng)建10個(gè)系統(tǒng)帳號(hào)oldboy01-oldboy10并設(shè)置密碼(密碼為隨機(jī)數(shù),要求字符和數(shù)字等混合)。
不用for循環(huán)的實(shí)現(xiàn)思路:http://user.qzone.qq.com/49000448/blog/1422183723
解答:
1.4 企業(yè)Shell面試題4:掃描網(wǎng)絡(luò)內(nèi)存活主機(jī)案例
寫一個(gè)Shell腳本,判斷10.0.0.0/24網(wǎng)絡(luò)里,當(dāng)前在線的IP有哪些?
解答:
1.5 企業(yè)Shell面試題5:解決DOS攻擊生產(chǎn)案例
寫一個(gè)Shell腳本解決DOS攻擊生產(chǎn)案例。
請(qǐng)根據(jù)web日志或者網(wǎng)絡(luò)連接數(shù),監(jiān)控當(dāng)某個(gè)IP并發(fā)連接數(shù)或者短時(shí)內(nèi)PV達(dá)到100(讀者根據(jù)實(shí)際情況設(shè)定),即調(diào)用防火墻命令封掉對(duì)應(yīng)的IP。防火墻命令為:iptables -I INPUT -s IP地址 -j DROP。
解答:
1.6 企業(yè)Shell面試題6:MySQL數(shù)據(jù)庫分庫備份
請(qǐng)實(shí)現(xiàn)對(duì)MySQL數(shù)據(jù)庫進(jìn)行分庫備份,用腳本實(shí)現(xiàn)。
解答:
1.7 企業(yè)Shell面試題7:MySQL數(shù)據(jù)庫分庫分表備份
如何實(shí)現(xiàn)對(duì)MySQL數(shù)據(jù)庫進(jìn)行分庫加分表備份,請(qǐng)用腳本實(shí)現(xiàn)。
解答:
1.8 企業(yè)Shell面試題8:篩選符合長(zhǎng)度的單詞案例
利用bash for循環(huán),打印下面這句話中字母數(shù)不大于6的單詞(某企業(yè)面試真題)。
I am oldboy teacher welcome to oldboy training class
解答:
1.9 企業(yè)Shell面試題9:MySQL主從復(fù)制異常監(jiān)控案例
開發(fā)一個(gè)守護(hù)進(jìn)程腳本每30秒監(jiān)控MySQL主從復(fù)制是否異常(包括不同步以及延遲),如果異常,則發(fā)送短信并發(fā)送郵件給管理員存檔。提示:如果沒主從復(fù)制的環(huán)境,可以把下面文本放到文件里讀取來模擬主從復(fù)制狀態(tài):
解答:
1.10 企業(yè)Shell面試題10:比較整數(shù)大小經(jīng)典案例
綜合實(shí)戰(zhàn)案例:開發(fā)shell腳本分別實(shí)現(xiàn)以腳本傳參以及read讀入的方式比較2個(gè)整數(shù)大小。用條件表達(dá)式(禁止if)進(jìn)行判斷并以屏幕輸出的方式提醒用戶比較結(jié)果。注意:一共是開發(fā)2個(gè)腳本。當(dāng)用腳本傳參以及read讀入的方式需要對(duì)變量是否為數(shù)字、并且傳參個(gè)數(shù)不對(duì)給予提示。
解答:
1.11 企業(yè)Shell面試題11:菜單自動(dòng)化軟件部署經(jīng)典案例
綜合實(shí)例:打印選擇菜單,按照選擇一鍵安裝不同的Web服務(wù)。
示例菜單:
[root@oldboy scripts]# sh menu.sh 1.[install lamp] 2.[install lnmp] 3.[exit] pls input the num you want:
要求:
1、當(dāng)用戶輸入1時(shí),輸出“start installing lamp.提示”,然后執(zhí)行/server/scripts/lamp.sh,腳本內(nèi)容輸出"lamp is installed"后退出腳本,工作中就是正式lamp一鍵安裝腳本;
2、當(dāng)用戶輸入2時(shí),輸出“start installing lnmp.提示”,然后執(zhí)行/server/scripts/lnmp.sh輸出"lnmp is installed"后退出腳本,工作中就是正式lnmp一鍵安裝腳本;
3、當(dāng)輸入3時(shí),退出當(dāng)前菜單及腳本;
4、當(dāng)輸入任何其他字符,給出提示“Input error”后退出腳本;
5、要對(duì)執(zhí)行的腳本進(jìn)行相關(guān)的條件判斷,例如:腳本文件是否存在,是否可執(zhí)行等判斷,盡量用上前面講解的知識(shí)點(diǎn)。
解答:
1.12 企業(yè)Shell面試題12:Web及MySQL服務(wù)異常監(jiān)測(cè)案例
用if條件語句實(shí)現(xiàn)對(duì)Nginx Web服務(wù)以及MySQL數(shù)據(jù)庫服務(wù)是否正常進(jìn)行檢測(cè),如果服務(wù)未啟動(dòng),則啟動(dòng)相應(yīng)服務(wù)。
解答:
1.13 企業(yè)Shell面試題13:監(jiān)控Memcached緩存服務(wù)是否正常
監(jiān)控Memcached緩存服務(wù)是否正常,模擬用戶(web客戶端)檢測(cè)。
使用nc命令加上set/get來模擬檢測(cè)。
解答:
1.14 企業(yè)Shell面試題14:開發(fā)腳本入侵檢測(cè)與報(bào)警案例
面試及實(shí)戰(zhàn)考試題:監(jiān)控web站點(diǎn)目錄(/var/html/www)下所有文件是否被惡意篡改(文件內(nèi)容被改了),如果有就打印改動(dòng)的文件名(發(fā)郵件),定時(shí)任務(wù)每3分鐘執(zhí)行一次。
解答:
1.15 企業(yè)Shell面試題15:開發(fā)Rsync服務(wù)啟動(dòng)腳本案例
寫網(wǎng)絡(luò)服務(wù)獨(dú)立進(jìn)程模式下Rsync的系統(tǒng)啟動(dòng)腳本,例如:/etc/init.d/rsyncd {start|stop|restart}。
要求:
1.要使用系統(tǒng)函數(shù)庫技巧。
2.要用函數(shù),不能一坨SHI的方式。
3.可被chkconfig管理。
解答:
1.16 企業(yè)Shell面試題16:開發(fā)MySQL多實(shí)例啟動(dòng)腳本
開發(fā)MySQL多實(shí)例啟動(dòng)腳本:
已知MySQL多實(shí)例啟動(dòng)命令為:mysqld_safe --defaults-file=/data/3306/my.cnf &
停止命令為:mysqladmin -u root -poldboy123 -S /data/3306/mysql.sock shutdown
請(qǐng)完成mysql多實(shí)例啟動(dòng)啟動(dòng)腳本的編寫
要求:用函數(shù),case語句、if語句等實(shí)現(xiàn)。
解答:
1.17 企業(yè)Shell面試題17:天津項(xiàng)目學(xué)生實(shí)踐抓鬮案例
好消息,老男孩培訓(xùn)學(xué)生外出企業(yè)項(xiàng)目實(shí)踐機(jī)會(huì)(第6次)來了(本月中旬),但是,名額有限,隊(duì)員限3人(班長(zhǎng)帶隊(duì))。
因此需要挑選學(xué)生,因此需要一個(gè)抓鬮的程序:
要求:
1、執(zhí)行腳本后,想去的同學(xué)輸入英文名字全拼,產(chǎn)生隨機(jī)數(shù)01-99之間的數(shù)字,數(shù)字越大就去參加項(xiàng)目實(shí)踐,前面已經(jīng)抓到的數(shù)字,下次不能在出現(xiàn)相同數(shù)字。
2、第一個(gè)輸入名字后,屏幕輸出信息,并將名字和數(shù)字記錄到文件里,程序不能退出繼續(xù)等待別的學(xué)生輸入。
解答:
1.18 企業(yè)Shell面試題18:破解RANDOM隨機(jī)數(shù)案例
已知下面的字符串是通過RANDOM隨機(jī)數(shù)變量md5sum后,再截取一部分連續(xù)字符串的結(jié)果,請(qǐng)破解這些字符串對(duì)應(yīng)的使用md5sum處理前的RANDOM對(duì)應(yīng)的數(shù)字?
21029299
00205d1c
a3da1677
1f6d12dd
890684b
解答:
1.19 企業(yè)Shell面試題19:批量檢查多個(gè)網(wǎng)站地址是否正常
企業(yè)面試題:批量檢查多個(gè)網(wǎng)站地址是否正常
要求:
1、使用shell數(shù)組方法實(shí)現(xiàn),檢測(cè)策略盡量模擬用戶訪問。
2、每10秒鐘做一次所有的檢測(cè),無法訪問的輸出報(bào)警。
3、待檢測(cè)的地址如下:
http://blog.oldboyedu.com
http://blog.etiantian.org
http://oldboy.blog.51cto.com
http://10.0.0.7
解答:
1.20 企業(yè)Shell面試題20:?jiǎn)卧~及字母去重排序案例
用shell處理以下內(nèi)容
1、按單詞出現(xiàn)頻率降序排序!
2、按字母出現(xiàn)頻率降序排序!
the squid project provides a number of resources to assist users design,implement and support squid installations. Please browse the documentation and support sections for more infomation,by oldboy training.
課堂實(shí)戰(zhàn)考察某企業(yè)shell面試考試題
http://oldboy.blog.51cto.com/2561410/1686891
解答:
1.21 企業(yè)Shell面試題21:開發(fā)腳本管理服務(wù)端LVS案例
請(qǐng)?jiān)贚VS負(fù)載均衡主節(jié)點(diǎn)上,開發(fā)管理LVS服務(wù)的腳本ip_vs。
實(shí)現(xiàn):利用ipvsadm可以啟動(dòng)并配置好LVS服務(wù),腳本形式:/etc/init.d/lvs{start|stop|restart}
解答:
1.22 企業(yè)Shell面試題22:LVS節(jié)點(diǎn)健康檢查及管理腳本案例
請(qǐng)?jiān)贚VS負(fù)載均衡主節(jié)點(diǎn)上,模擬keepalived健康檢查功能管理LVS節(jié)點(diǎn),
當(dāng)節(jié)點(diǎn)掛掉從服務(wù)器池中剔除,好了再加到服務(wù)器池中來。
解答:
1.23 企業(yè)Shell面試題23:LVS客戶端配置腳本案例
請(qǐng)?jiān)贚VS客戶端節(jié)點(diǎn)上,開發(fā)LVS客戶端設(shè)置VIP以及抑制ARP的管理腳本
實(shí)現(xiàn):/etc/init.d/lvsclient {start|stop|restart}
解答:
1.24 企業(yè)Shell面試題24:模擬keepalved軟件高可用案例
請(qǐng)?jiān)贚VS服務(wù)端備用節(jié)點(diǎn)上,模擬keepalved vrrp功能,監(jiān)聽主節(jié)點(diǎn),如果主節(jié)點(diǎn)不可訪問則備節(jié)點(diǎn)啟動(dòng)并配置LVS實(shí)現(xiàn)接管主節(jié)點(diǎn)的資源提供服務(wù)(提醒:注意ARP緩存),提示此題要借助1.21的功能。
解答:
1.25 企業(yè)Shell面試題25:編寫正(或長(zhǎng))方形圖形案例
請(qǐng)用shell或Python編寫一個(gè)正(或長(zhǎng))方形,接收用戶輸入的數(shù)字。
解答:
1.26 企業(yè)Shell面試題26:編寫等腰三角形圖形字符案例
請(qǐng)用shell或Python編寫一個(gè)等腰三角形,接收用戶輸入的數(shù)字。
解答:
1.27 企業(yè)Shell面試題27:編寫直角梯形圖形字符案例
請(qǐng)用shell或Python編寫一個(gè)畫直角梯形程序,接收用戶輸入的參數(shù)n(n>2),m。
解答
1.28 企業(yè)Shell面試題28:51CTO博文爬蟲案例
獲取51CTO博客列表倒序排序考試題
老男孩教育培訓(xùn)機(jī)構(gòu)需求:
需求如下:
請(qǐng)把http://oldboy.blog.51cto.com 地址中的所有博文,按照時(shí)間倒序列表如下:
2013-09-13 運(yùn)維就是一場(chǎng)沒有硝煙的戰(zhàn)爭(zhēng)
http://oldboy.blog.51cto.com/2561410/1296694
2016-04-17 運(yùn)維人員寫項(xiàng)目方案及推進(jìn)項(xiàng)目的基本流程思路
http://oldboy.blog.51cto.com/2561410/1764820
附加:高級(jí)要求:
生成html頁面,并設(shè)置超鏈接。
結(jié)果如下:
http://oldboy.blog.51cto.com/2561410/1862041
解答:
1.29 企業(yè)Shell面試題29:Nginx負(fù)載節(jié)點(diǎn)狀態(tài)監(jiān)測(cè)案例
開發(fā)通過Web界面展示監(jiān)控Nginx代理節(jié)點(diǎn)狀態(tài),效果圖如下,當(dāng)節(jié)點(diǎn)宕機(jī)時(shí),以紅色展示,當(dāng)節(jié)點(diǎn)正常時(shí)以綠色展示。
解答:
1.30 企業(yè)Shell面試題30:企業(yè)代碼上線發(fā)布系統(tǒng)案例
寫一套簡(jiǎn)單的企業(yè)代碼上線發(fā)布系統(tǒng)案例,利用SVN對(duì)代碼及配置文件進(jìn)行管理,在辦公室服務(wù)器上從SVN取出指定版本的代碼和配置,發(fā)布到IDC機(jī)房分發(fā)機(jī)服務(wù)器上,在分發(fā)服務(wù)器或者負(fù)載均衡器上或者應(yīng)用服務(wù)器本地實(shí)現(xiàn)代碼平滑發(fā)布、上線、回滾腳本(具體設(shè)計(jì)請(qǐng)參考課堂講解的企業(yè)代碼發(fā)布方案)。
推薦課程:
2016最新Shell高級(jí)編程實(shí)戰(zhàn)視頻課程套餐
http://edu.51cto.com/pack/view/id-546.html