Linux Shell 指令碼的 10 個有用的“面試問題和解答”
Linux 的浩瀚無垠,使人總能每次都提交與眾不同的內容。這些內容不僅對他們的職業生涯很有用,同時也讓他們增長知識。在此,我們就嘗試這麼去做,至於能取得多大的成功,就由我們的讀者朋友們來判斷吧。
在此,作為 shell 指令碼的附加內容,在本文中我們將從面試的角度解讀與 Linux Shell 相關的問題。
1.在 shell 指令碼成功執行前,如何中斷指令碼執行?
解答:我們需要使用exit命令來實現以上描述的情境。exit命令被強制輸出非0值時,指令碼會報錯並退出。在 Unix 環境下的 shell 指令碼中,0值表示成功執行。因此,在指令碼終止前執行一個不帶引號的exit -1命令將使指令碼中止。
儲存檔案並執行。
從上面的指令碼中可以清楚地看到,在 exit -1 命令前,指令碼執行得很好。
2.如何使用 Linux 命令來移除檔案頭?
解答:當我們需要刪除檔案中的指定行時,sed命令可以用來解決該問題。
這個是用來刪除檔案頭(檔案的首行)的正確命令。
好吧,其實sed命令內建的-i開關就可以幹這活,就不需要重定向符了吧。
3. 你怎麼檢查一個文字檔案中某一行的長度?
解答:sed命令也可以用來查詢文字檔案中的某一行或者檢查其長度。
sed -n ‘n p’ file.txt可以解決,這裡n表示行號,p列印出匹配內容(到標準輸出),該命令通常與-n命令列選項連用。那麼,怎樣來獲取長度計數呢?很明顯,我們需要透過管道輸出給wc命令來計算。
要得到文字檔案‘linuxmi.txt’的第五行的長度,執行如下命令:
4. 可以在 Linux 系統上檢視到所有非列印字元嗎?你是怎麼做到的?
解答:可以。可以在 Linux 中檢視所有的非列印字元。要實現上面所講的方案,我們需要vi編輯器的幫助。怎樣在vi編輯器中顯示非列印字元?
開啟vi編輯器。
先按[esc]鍵,然後按:進入到vi編輯器的命令模式。
最後,從 vi 編輯器的命令介面輸入set list命令並執行。
注: 這種方式可以檢視文字檔案中的所有非列印字元,包括 ctrl+m(^M)。
5. 假如你是一個員工組的團隊領導,為xyz公司工作。公司要求你建立一個dir_xyz目錄,讓該組成員都能在該目錄下建立或訪問檔案,但是除了檔案建立者之外的其他人不能刪除檔案,你會怎麼做?
解答:這真是個有趣的工作方案。好吧,上面所講的方案,我們需要透過下面的步驟來實施,這簡直就是小菜一碟。
第一行命令建立了一個目錄(dir_xyz),上面的第二行命令讓組(g)具有‘寫’和‘執行’的許可權,而上面的最後一行命令——許可權位最後的‘+t’是‘粘滯位’,它用來替換‘x’,表明在這個目錄中,檔案只能被它們的擁有者、目錄的擁有者或者是超級使用者root刪除。
6. 你能告訴我一個Linux程式經歷的各個階段嗎?
解答:一個 Linux 程式在它的一生中,通常經歷了四個主要階段。
這裡是Linux程式要經歷的四個階段。
等待:Linux程式等待資源。
執行:Linux程式當前正在執行中。
停止:Linux程式在成功執行後或收到殺死程式訊號後停止。
殭屍:如果該程式已經結束,但仍然留在程式表中,被稱為‘殭屍’。
7. Linux中cut命令怎麼用?
解答:cut是一個很有用的 Linux 命令,當我們要擷取檔案的指定部分並列印到標準輸出,當文字區域以及檔案本身很大時,這個命令很有用。
例如,擷取txt_linuxmi檔案的前10列。
要擷取該檔案中的第二,第五和第七列。
8. cmp和diff命令的區別是什麼?
解答:cmp和diff命令用來獲取相同的東西,但各有側重。
diff命令輸出為了使兩個檔案一樣而應該做的修改。而‘cmp’命令則將兩個檔案逐位元組對比,並報告第一個不匹配的項。
9. 可以用echo命令來替換ls命令嗎?
解答:可以的。‘ls’命令可以用‘echo’命令來替代。‘ls’命令列出目錄內容,從替換上述命令的角度講,我們可以使用‘echo *’,兩個命令的輸出完全一樣。
10. 你可能聽過 inode 吧。你能簡要描述一下 inode 嗎?
解答:inode 是一個資料結構,在 Linux 上用於檔案標識。每個檔案在 Unix 系統上有一個獨立的 inode 和一個唯一的 inode 號。
來自 “ https://www.linuxmi.com ”, 原文作者:高效運維;原文連結:https://www.linuxmi.com,如有侵權,請聯絡管理員刪除。
相關文章
- Linux Shell指令碼的10個有用的“面試問題和解答”Linux指令碼面試
- 10 個實戰及面試常用 Shell 指令碼編寫面試指令碼
- 雲端計算面試題及答案,常見的Shell指令碼面試題面試題指令碼
- linux常用的shell指令碼Linux指令碼
- Docker面試問題與解答Docker面試
- Python面試最常問的10個問題Python面試
- 30 個 Openstack 經典面試問題和解答面試
- 37個 JavaScript 基本面試問題和解答JavaScript面試
- 10 個常問的 JS 面試題JS面試題
- 四個常見的Linux面試問題Linux面試
- linux shell指令碼中 =~ 的作用Linux指令碼
- Linux Shell指令碼Linux指令碼
- 好程式設計師Linux雲端計算教程分享Shell指令碼面試題程式設計師Linux指令碼面試題
- 六個經典的HTML5面試問題奉上,太有用啦!HTML面試
- Linux命令和shell指令碼學習Linux指令碼
- Python工程師必看的面試問題與解答(中)Python工程師面試
- 面試被問TopK問題,可以這樣優雅的解答面試TopK
- C# 面試問題與解答1C#面試
- shell有哪些面試簡答題技巧?Linux面試題Linux面試題
- Linux shell:執行shell指令碼的幾種方式Linux指令碼
- [20231102]除錯bash shell指令碼遇到的問題.txt除錯指令碼
- [20210107]編寫bash shell指令碼遇到的問題.txt指令碼
- 主題 2 Shell工具和指令碼指令碼
- 一個簡單的Linux啟動jar包的shell指令碼LinuxJAR指令碼
- HTTPS總結+相關面試問題解答HTTP面試
- 10個常見的Redis面試"刁難"問題Redis面試
- 什麼是Shell指令碼?Shell指令碼在Linux運維工作中的地位!指令碼Linux運維
- 執行 shell 指令碼 \r 問題解決指令碼
- Linux編寫Bash指令碼的10個技巧Linux指令碼
- iOS 面試題解答二iOS面試題
- Linux必須掌握的shell指令碼基礎Linux指令碼
- 15大自動化測試面試問題與解答面試
- 分享兩個實用的shell指令碼指令碼
- 34 個 常用 Linux Shell 指令碼,運維必備!Linux指令碼運維
- 測試面試題目求解答面試題
- 邦芒面試:面試時要問清楚的幾個問題面試
- Linux 【Shell指令碼經典案例】Linux指令碼
- Linux基礎五(shell指令碼)Linux指令碼