1. 程式人生 > >Shell 企業29道面試題 [轉]

Shell 企業29道面試題 [轉]

企業面試題1:(生產實戰案例):監控MySQL主從同步是否異常,如果異常,則傳送簡訊或者郵件給管理員。提示:如果沒主從同步環境,可以用下面文字放到檔案裡讀取來模擬:

階段1:開發一個守護程序指令碼每30秒實現檢測一次。
階段2:如果同步出現如下錯誤號(1158,1159,1008,1007,1062),則跳過錯誤。
階段3:請使用陣列技術實現上述指令碼(獲取主從判斷及錯誤號部分)

[[email protected]~]# mysql -uroot -p'oldboy'-S /data/3307/mysql.sock -e "show slavestatus\G;"
***************************
1. row ***************************
Slave_IO_State:Waitingfor master to send event
Master_Host:10.0.0.179#當前的mysql master伺服器主機
Master_User: rep
Master_Port:3306
Connect_Retry:60
Master_Log_File:mysql-bin.000013
Read_Master_Log_Pos:502547
Relay_Log_File:relay-bin.000013
Relay_Log_Pos:251
Relay_Master_Log_File:mysql-bin.000013
Slave_IO_Running
:Yes
Slave_SQL_Running:Yes
Replicate_Do_DB:
Replicate_Ignore_DB: mysql
Replicate_Do_Table:
Replicate_Ignore_Table:
Replicate_Wild_Do_Table:
Replicate_Wild_Ignore_Table:
Last_Errno:0
Last_Error:
Skip_Counter:0
Exec_Master_Log_Pos:502547
Relay_Log_Space:502986
Until_Condition:None
Until_Log_File:
Until_Log_Pos:0
Master_SSL_Allowed
:No
Master_SSL_CA_File:
Master_SSL_CA_Path:
Master_SSL_Cert:
Master_SSL_Cipher:
Master_SSL_Key:
Seconds_Behind_Master:0#和主庫比同步延遲的秒數,這個引數很重要
Master_SSL_Verify_Server_Cert:No
Last_IO_Errno:0
Last_IO_Error:
Last_SQL_Errno:0
Last_SQL_Error:

企業面試題2:

使用for迴圈在/oldboy目錄下通過隨機小寫10個字母加固定字串oldboy批量建立10個html檔案,名稱例如為:

[[email protected] oldboy]# sh /server/scripts/oldboy.sh
[[email protected] oldboy]# ls 
coaolvajcq_oldboy.html  qnvuxvicni_oldboy.html  vioesjmcbu_oldboy.html
gmkhrancxh_oldboy.html  tmdjormaxr_oldboy.html  wzewnojiwe_oldboy.html
jdxexendbe_oldboy.html  ugaywanjlm_oldboy.html  xzzruhdzda_oldboy.html
qcawgsrtkp_oldboy.html  vfrphtqjpc_oldboy.html

企業面試題3:請用至少兩種方法實現!

將以上檔名中的oldboy全部改成oldgirl(用for迴圈實現),並且html改成大寫。

企業面試題4:

批量建立10個系統帳號oldboy01-oldboy10並設定密碼(密碼為隨機8位字串)。

企業面試題5:

寫一個指令碼,實現判斷10.0.0.0/24網路裡,當前線上使用者的IP有哪些(方法有很多)

企業實戰題6:請用至少兩種方法實現!

寫一個指令碼解決DOS攻擊生產案例
提示:根據web日誌或者或者網路連線數,監控當某個IP併發連線數或者短時內PV達到100,即呼叫防火牆命令封掉對應的IP,監控頻率每隔3分鐘。防火牆命令為:iptables -I INPUT -s 10.0.1.10 -j DROP。

企業實戰題7:

開發mysql多例項啟動指令碼:
已知mysql多例項啟動命令為:mysqld_safe–defaults-file=/data/3306/my.cnf &
停止命令為:mysqladmin -u root -poldboy123 -S /data/3306/mysql.sockshutdown
請完成mysql多例項啟動啟動指令碼的編寫
要求:用函式,case語句、if語句等實現。

企業實戰題8:如何實現對MySQL資料庫進行分庫備份,請用指令碼實現

企業實戰題9:如何實現對MySQL資料庫進行分庫加分表備份,請用指令碼實現

企業面試題10:請用至少兩種方法實現!

bash for迴圈列印下面這句話中字母數不大於6的單詞(崑崙萬維面試題)。
I am oldboy teacher welcome to oldboy training class.

企業面試題11:

開發shell指令碼分別實現以指令碼傳參以及read讀入的方式比較2個整數大小。以螢幕輸出的方式提醒使用者比較結果。注意:一共是開發2個指令碼。當用指令碼傳參以及read讀入的方式需要對變數是否為數字、並且傳參個數做判斷。

企業面試題12:列印選擇選單,一鍵安裝Web服務:

[[email protected]]# sh menu.sh
1.[install lamp]
2.[install lnmp]
3.[exit]
    pls input the num you want:

要求:

1、當用戶輸入1時,輸出“startinstalling lamp.”然後執行/server/scripts/lamp.sh,指令碼內容輸出“lampis installed”後退出指令碼;

2、當用戶輸入2時,輸出“startinstalling lnmp.”然後執行/server/scripts/lnmp.sh輸出“lnmpis installed”後退出指令碼;

3、當輸入3時,退出當前選單及指令碼;

4、當輸入任何其它字元,給出提示“Input error”後退出指令碼。

5、要對執行的指令碼進行相關條件判斷,例如:指令碼是否存在,是否可執行等。 

企業面試題13:

1、監控web服務是否正常,不低於3種監控策略。

2、監控db服務是否正常,不低於3種監控策略。
要求間隔1分鐘,持續監控。

企業面試題14:監控memcache服務是否正常,模擬使用者(web客戶端)檢測。

使用nc命令加上set/get來模擬檢測,以及監控響應時間及命中率。

企業面試題15

面試及實戰考試題:監控web站點目錄(/var/html/www)下所有檔案是否被惡意篡改(檔案內容被改了),如果有就列印改動的檔名(發郵件),定時任務每3分鐘執行一次(10分鐘時間完成)。

企業面試題16:企業案例:寫網路服務獨立程序模式下rsync的系統啟動指令碼

例如:/etc/init.d/rsyncd{start|stop|restart} 。
要求:

1.要使用系統函式庫技巧。
2.要用函式,不能一坨SHI的方式。
3.可被chkconfig管理。

企業面試題17:老男孩教育天津專案學生實踐抓鬮題目:

好訊息,老男孩培訓學生外出企業專案實踐機會(第6次)來了(本月中旬),但是,名額有限,隊員限3人(班長帶隊)。

因此需要挑選學生,因此需要一個抓鬮的程式:

要求:

1、執行指令碼後,想去的同學輸入英文名字全拼,產生隨機數01-99之間的數字,數字越大就去參加專案實踐,前面已經抓到的數字,下次不能在出現相同數字。

2、第一個輸入名字後,螢幕輸出資訊,並將名字和數字記錄到檔案裡,程式不能退出繼續等待別的學生輸入
 

企業面試題18:老男孩linux企業面試題:

已知下面的字串是通過RANDOM隨機數變數md5sum|cut-c 1-8擷取後的結果,請破解這些字串對應的md5sum前的RANDOM對應數字?

21029299

00205d1c

a3da1677

1f6d12dd

890684b

企業面試題19:批量檢查多個網站地址是否正常 

要求:shell陣列方法實現,檢測策略儘量模擬使用者訪問思路

http://www.etiantian.org

http://www.taobao.com

http://oldboy.blog.51cto.com

http://10.0.0.7 

企業面試題20(中企動力)::用shell處理以下內容

1、按單詞出現頻率降序排序!

2、按字母出現頻率降序排序!

the
squid project provides a number of resources toassist users
design,implement and support squid installations. Please browsethe
documentation and support sections for more infomation

企業面試題21:輸出正方形、等腰三角形、直角梯形,見如下內容

企業面試題22:開發通過web介面展示監控Nginx代理節點狀態,效果圖如下。

wKioL1Z2j3nCbtimAADO--T7ahw342.jpg

lvs+keepalived叢集部分Shell企業案例:

企業面試題23、【LVS主節點】手工開發ipvsadm管理lvs的指令碼ip_vs

   實現:/etc/init.d/lvs {start|stop|restart}

企業面試題24、【LVS主節點】模擬keepalived健康檢查功能管理LVS節點,

當節點掛掉(檢測2次,間隔2秒)從伺服器池中剔除,好了(檢測2次,間隔2秒)加進來

提示:利用ipvsadm命令實現新增和減少LVS節點。

企業面試題25、【LVS客戶端節點】開發LVS客戶端設定VIP以及抑制ARP的管理指令碼

    實現:/etc/init.d/lvsclient {start|stop|restart}

企業面試題26、【LVS備節點】模擬keepalved vrrp功能,監聽主節點,如果主節點不可訪問則備節點啟動並配置LVS實現接管主節點的資源提供服務(提醒:注意ARP快取) 

企業面試題27、請用shell或Python編寫一個正方形(oldboy_square.sh),接收使用者輸入的數字。

例如:

[[email protected] ~]# sh oldboy_square1.sh 
PleaseEnter a number:5
++++++++++
++++++++++
++++++++++
++++++++++
++++++++++
[[email protected] ~]# sh oldboy_square2.sh  
PleaseEnter a number:9
■■■■■■■■■
■■■■■■■■■
■■■■■■■■■
■■■■■■■■■
■■■■■■■■■
■■■■■■■■■
■■■■■■■■■
■■■■■■■■■
■■■■■■■■■

企業面試題28、請用shell或Python編寫一個等腰三角形(oldboy2_triangle.sh),接收使用者輸入的數字。

例如:

[[email protected] ~]# sh oldboy2_triangle.sh 
PleaseEnter a number:5
*
***
*****
*******
*********
[[email protected] ~]# sh oldboy2_triangle.sh 
PleaseEnter a number:8
*
***
*****
*******
*********
***********
*************
***************

企業面試題29、請用shell或Python編寫一個畫直角梯形程式(oldboy4.sh),接收使用者輸入的引數n,m

例如:

[[email protected] ~]# sh oldboy4.sh 46
****
*****
******

檢查標準:

1、檢視實現的指令碼,並詢問指令碼中的設計思想及實現流程。

2、必要情況下,面試官可以看著你要求你重新開發出來。

3、檢查人:班長,組長,老男孩老師,助教。

相關推薦

Shell 企業29試題 []

企業面試題1:(生產實戰案例):監控MySQL主從同步是否異常,如果異常,則傳送簡訊或者郵件給管理員。提示:如果沒主從同步環境,可以用下面文字放到檔案裡讀取來模擬: 階段1:開發一個守護程序指令碼每30秒實現檢測一次。 階段2:如果同步出現如下錯誤號(1158,115

【前端小小白的學習之路】整理幾試題之(HTTP協議)【

ase 賬號 檢測 提交數據 大型數據集 tor 添加 描述 分享 轉自:http://www.cnblogs.com/ranyonsue/p/5984001.html HTTP簡介 HTTP協議是Hyper Text Transfer Protocol(超文本傳輸

】Java併發程式設計73試題及答案

浪費了“黃金五年”的Java程式設計師,還有救嗎? >>>   

每一個JavaScript開發者都應該知道的10試題

結束 vid 認識 本質 特定 更新 mixin 構造函數 程序猿 JavaScript十分特別。而且差點兒在每一個大型應用中起著至關關鍵的數據。那麽,究竟是什麽使JavaScript顯得與眾不同,意義非凡? 這裏有一些問題將幫助你了解其真正的奧妙所在:

Java中最常見的十試題

在那 不一定 內存溢出 修飾 嚴重 nal declared ima java學習 第一,談談final, finally, finalize的區別。 final?修飾符(關鍵字)如果一個類被聲明為final,意味著它不能再派生出新的子類,不能作為父類被繼承。因此一個類不

Java繼承中的幾試題

有一個 str round .sh -s string ava 構造代碼塊 問題 第一題: 1 /* 2 看程序寫結果: 3 A:訪問成員變量的原則:就近原則。 4 B:this和super的問題: 5

企業必考試題:查找/oldboy目錄下所有7天以前的以log結尾的文件移動到/tmp下。

企業面試題企業必考面試題:查找/oldboy目錄下所有7天以前的以log結尾的文件移動到/tmp下。 要求:請給出至少三種實現方法,有能力的朋友試試看! 方法一、 [root@centos6 oldboy]# mv $(find . -name "*.log" -size +1M -at

招人已了,招人心得跟47試題加答案放出來

iOS 面試題 程序員 人才濟濟的iOS開發者,你憑什麽脫穎而出? 與崗位要求相去甚遠,如何挑戰極限? 想去心怡公司,如何馬到成功? 那麽,你的絕招是什麽呢? 在這個iOS崗位供不應求的市場,對iOS開發者對要求日益增長,小編分享一下最近對招人心得,放出47道面試題+答案,供廣大iOS開發者參考

招人已了,招人心得跟 47 試題加答案放出來

好處 prop patch 操作 opera 結果 GC ssi rop 人才濟濟的 iOS 開發者,你憑什麽脫穎而出? 與崗位要求相去甚遠,如何挑戰極限? 想去心怡公司,如何馬到成功? 那麽,你的絕招是什麽呢? 在這個 iOS 崗位供不應求的市場,對 iOS 開發者對要求

關於H5的20試題及答案

查找 除了 模式 鏈接 canvas ike 空元素 search 人的 1 DOCTYPE有什麽作用?標準模式與混雜模式如何區分?它們有何意義? 告訴瀏覽器使用哪個版本的HTML規範來渲染文檔。DOCTYPE不存在或形式不正確會導致HTML文檔以混雜模式呈現。 標準模式

315試題(一)

cnblogs p地址 繼承 第三方庫 出現的次數 韓文 事務處理 輸入 __call 1、為什麽學習Python?語言本身簡潔,優美,功能超級強大 跨平臺 非常火爆的社區 很多有名的大公司在用 2、通過什麽途徑學習的Python?培訓機構 + 自學 3、Python和Ja

Java每天10試題,跟我走,offer有!(二)

  11、面向物件的特徵有哪些方面   1.抽象: 抽象就是忽略一個主題中與當前目標無關的那些方面, 以便更充分地注意與當前目標有關的方面。 抽象並不打算了解全部問題,而只是選擇其中的一部分, 暫時不用部分細節。 抽象包括兩個方面, 一是過程抽象, 二是資料抽

撩課-Java每天10試題第1天

1.簡述JDK、JRE、JVM? 一、JDK JDK(Java Development Kit) 是整個JAVA的核心, 包括了Java執行環境(Java Runtime Envirnment), 一堆Java工具(javac/java/jdb等) 和Java基礎的類庫(即Java API 包括rt

撩課-Java每天10試題第2天

11、面向物件的特徵有哪些方面    1.抽象: 抽象就是忽略一個主題中與當前目標無關的那些方面, 以便更充分地注意與當前目標有關的方面。 抽象並不打算了解全部問題,而只是選擇其中的一部分, 暫時不用部分細節。 抽象包括兩個方面, 一是過程抽象, 二是資料抽象。 2.繼承: 繼承是一種聯結類的層次

撩課-Java每天10試題第3天

內存溢出 變量 pre 模式 all span 語言 內容 struct 21.final, finally, finalize的區別 1、final修飾符(關鍵字)。 被final修飾的類, 就意味著不能再派生出新的子類, 不能作為父類而被子類繼承。 因此一個類不能既被

撩課-Java每天10試題第4天

撩課Java+系統架構 視訊 點選開始學習 31.靜態變數和例項變數的區別? 靜態變數也叫類變數, 這種變數前加了static修飾符。 可以直接用類名呼叫, 也可以用物件呼叫, 而且所有物件的同一個類變數 都是共享同一塊記憶體空間。 例項變數也叫物件變數, 這種變數沒有加static修

撩課-Java每天10試題第5天

41.Iterator、ListIterator 和 Enumeration的區別? 迭代器是一種設計模式, 它是一個物件, 它可以遍歷並選擇序列中的物件, 而開發人員不需要了解 該序列的底層結構。 迭代器通常被稱為“輕量級”物件, 因為建立它的代價小。 Java中

撩課-Java每天10試題第6天

51.HashMap的實現原理 HashMap的主幹是一個Entry陣列。 Entry是HashMap的基本組成單元, 每一個Entry包含一個key-value鍵值對。 HashMap基於hashing原理, 我們通過put()和get()方法儲存和獲取物件。 當我們將鍵值對傳遞給put

撩課-Java每天5試題第8天

71.jsp有哪些內建物件?作用分別是什麼? Page, pageContext, request, response, session, application, out, config, exception Page指的是JSP被翻譯成Servlet的物件的引用. pageContext物件可

撩課-Java每天5試題第9天

xml技術 日誌 面試 相關 不同 XML onf 對象存儲 文檔加載 撩課Java+系統架構 視頻 點擊開始學習 76、XML技術的作用? XML技術用於數據存儲、 信息配置、 數據交換三方面。 可以將數據存儲在XML中, 通過節點、 元素內容、 屬性標示數據內容及關