0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

Linux Shell腳本相關(guān)的面試問題

dyquk4xk2p3d ? 來源:Linux迷 ? 2023-03-26 10:17 ? 次閱讀

		

		


		


		

		

		

		

		
Linux 的浩瀚無垠,使人總能每次都提交與眾不同的內(nèi)容。這些內(nèi)容不僅對(duì)他們的職業(yè)生涯很有用,同時(shí)也讓他們?cè)鲩L知識(shí)。在此,我們就嘗試這么去做,至于能取得多大的成功,就由我們的讀者朋友們來判斷吧。
在此,作為 shell 腳本的附加內(nèi)容,在本文中我們將從面試的角度解讀與 Linux Shell 相關(guān)的問題。1、在 shell 腳本成功執(zhí)行前,如何中斷腳本執(zhí)行?解答:我們需要使用exit命令來實(shí)現(xiàn)以上描述的情境。exit命令被強(qiáng)制輸出非0值時(shí),腳本會(huì)報(bào)錯(cuò)并退出。在 Unix 環(huán)境下的 shell 腳本中,0值表示成功執(zhí)行。因此,在腳本終止前執(zhí)行一個(gè)不帶引號(hào)的exit -1命令將使腳本中止。

	
#!/bin/bash
echo "Hello"
exit -1
echo "bye"
保存文件并執(zhí)行。

	
# sh linuxmi.sh
Hello
linuxmi.sh:行3: exit-1: 未找到命令
bye

0e9d0842-ca69-11ed-bfe3-dac502259ad0.png

從上面的腳本中可以清楚地看到,在exit -1命令前,腳本執(zhí)行得很好。

2、如何使用 Linux 命令來移除文件頭?

解答:當(dāng)我們需要?jiǎng)h除文件中的指定行時(shí),sed命令可以用來解決該問題。

這個(gè)是用來刪除文件頭(文件的首行)的正確命令。


	
# sed '1 d' file.txt

好吧,其實(shí)sed命令內(nèi)建的-i開關(guān)就可以干這活,就不需要重定向符了吧。


	
# sed -i '1 d' file.txt

3、你怎么檢查一個(gè)文本文件中某一行的長度?解答:sed命令也可以用來查找文本文件中的某一行或者檢查其長度。sed -n ‘n p’ file.txt可以解決,這里n表示行號(hào),p打印出匹配內(nèi)容(到標(biāo)準(zhǔn)輸出),該命令通常與-n命令行選項(xiàng)連用。那么,怎樣來獲取長度計(jì)數(shù)呢?很明顯,我們需要通過管道輸出給wc命令來計(jì)算。
# sed –n 'n p' file.txt | wc –c

要得到文本文件‘linuxmi.txt’的第五行的長度,運(yùn)行如下命令:

# sed -n '5 p' linuxmi.txt | wc -c

0eb359ee-ca69-11ed-bfe3-dac502259ad0.png

4、可以在 Linux 系統(tǒng)上查看到所有非打印字符嗎?你是怎么做到的?解答:可以??梢栽?Linux 中查看所有的非打印字符。要實(shí)現(xiàn)上面所講的方案,我們需要vi編輯器的幫助。怎樣在vi編輯器中顯示非打印字符?打開vi編輯器。先按[esc]鍵,然后按進(jìn)入到vi編輯器的命令模式。最后,從 vi 編輯器的命令界面輸入set list命令并執(zhí)行。

注: 這種方式可以查看文本文件中的所有非打印字符,包括 ctrl+m(^M)。

5、假如你是一個(gè)員工組的團(tuán)隊(duì)領(lǐng)導(dǎo),為xyz公司工作。公司要求你創(chuàng)建一個(gè)dir_xyz目錄,讓該組成員都能在該目錄下創(chuàng)建或訪問文件,但是除了文件創(chuàng)建者之外的其他人不能刪除文件,你會(huì)怎么做?解答:這真是個(gè)有趣的工作方案。好吧,上面所講的方案,我們需要通過下面的步驟來實(shí)施,這簡(jiǎn)直就是小菜一碟。

	
# mkdir dir_xyz
# chmod g+wx dir_xyz
# chmod +t dir_xyz

第一行命令創(chuàng)建了一個(gè)目錄(dir_xyz),上面的第二行命令讓組(g)具有‘寫’和‘執(zhí)行’的權(quán)限,而上面的最后一行命令——權(quán)限位最后的‘+t’是‘粘滯位’,它用來替換‘x’,表明在這個(gè)目錄中,文件只能被它們的擁有者、目錄的擁有者或者是超級(jí)用戶root刪除。

6、你能告訴我一個(gè)Linux進(jìn)程經(jīng)歷的各個(gè)階段嗎?

解答:一個(gè) Linux 進(jìn)程在它的一生中,通常經(jīng)歷了四個(gè)主要階段。

這里是Linux進(jìn)程要經(jīng)歷的四個(gè)階段。

  • 等待:Linux進(jìn)程等待資源。

  • 運(yùn)行:Linux進(jìn)程當(dāng)前正在執(zhí)行中。

  • 停止:Linux進(jìn)程在成功執(zhí)行后或收到殺死進(jìn)程信號(hào)后停止。

  • 僵尸:如果該進(jìn)程已經(jīng)結(jié)束,但仍然留在進(jìn)程表中,被稱為‘僵尸’。

7、Linux中cut命令怎么用?

解答cut是一個(gè)很有用的 Linux 命令,當(dāng)我們要截取文件的指定部分并打印到標(biāo)準(zhǔn)輸出,當(dāng)文本區(qū)域以及文件本身很大時(shí),這個(gè)命令很有用。

例如,截取txt_linuxmi文件的前10列。


	
# cut -c1-10 txt_linuxmi

要截取該文件中的第二,第五和第七列。


	
# cut -d;-f2 -f5 -f7 txt_linuxmi

8、cmpdiff命令的區(qū)別是什么?解答cmpdiff命令用來獲取相同的東西,但各有側(cè)重。
diff命令輸出為了使兩個(gè)文件一樣而應(yīng)該做的修改。而‘cmp’命令則將兩個(gè)文件逐字節(jié)對(duì)比,并報(bào)告第一個(gè)不匹配的項(xiàng)。9、可以用echo命令來替換ls命令嗎?解答:可以的?!甽s’命令可以用‘echo’命令來替代?!甽s’命令列出目錄內(nèi)容,從替換上述命令的角度講,我們可以使用‘echo *’,兩個(gè)命令的輸出完全一樣。10、你可能聽過 inode 吧。你能簡(jiǎn)要描述一下 inode 嗎?解答:inode 是一個(gè)數(shù)據(jù)結(jié)構(gòu),在 Linux 上用于文件標(biāo)識(shí)。每個(gè)文件在 Unix 系統(tǒng)上有一個(gè)獨(dú)立的 inode 和一個(gè)唯一的 inode 號(hào)。

審核編輯:湯梓紅

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • Linux
    +關(guān)注

    關(guān)注

    87

    文章

    11123

    瀏覽量

    207920
  • UNIX
    +關(guān)注

    關(guān)注

    0

    文章

    296

    瀏覽量

    41335
  • 命令
    +關(guān)注

    關(guān)注

    5

    文章

    658

    瀏覽量

    21929
  • Shell
    +關(guān)注

    關(guān)注

    1

    文章

    359

    瀏覽量

    23192
  • 腳本
    +關(guān)注

    關(guān)注

    1

    文章

    382

    瀏覽量

    14761

原文標(biāo)題:Linux Shell 腳本的 10 個(gè)有用的“面試問題和解答”

文章出處:【微信號(hào):良許Linux,微信公眾號(hào):良許Linux】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。

收藏 人收藏

    評(píng)論

    相關(guān)推薦

    linux shell腳本分享

    今天浩道跟大家分享shell腳本硬核干貨,可以說是拿來即用序列!
    發(fā)表于 02-17 09:13 ?365次閱讀

    Linux Shell腳本入門到實(shí)戰(zhàn)詳解

    Linux Shell腳本入門到實(shí)戰(zhàn)詳解
    發(fā)表于 02-17 15:03 ?578次閱讀

    嵌入式Linux入門(五、Shell腳本編程上:認(rèn)識(shí)Shell腳本

    大家好,是矜辰所致,嵌入式 Linux入 門第五課,本課開始簡(jiǎn)單學(xué)習(xí)一下 Shell 腳本編程。
    的頭像 發(fā)表于 07-13 16:10 ?1323次閱讀
    嵌入式<b class='flag-5'>Linux</b>入門(五、<b class='flag-5'>Shell</b><b class='flag-5'>腳本</b>編程上:認(rèn)識(shí)<b class='flag-5'>Shell</b><b class='flag-5'>腳本</b>)

    Linux shell腳本分享

    今天浩道跟大家分享幾個(gè)Linux運(yùn)維中常用到的shell腳本!
    發(fā)表于 07-18 09:53 ?522次閱讀
    <b class='flag-5'>Linux</b> <b class='flag-5'>shell</b><b class='flag-5'>腳本</b>分享

    Linux Shell相關(guān)面試問

    Linux 的浩瀚無垠,使人總能每次都提交與眾不同的內(nèi)容。這些內(nèi)容不僅對(duì)他們的職業(yè)生涯很有用,同時(shí)也讓他們?cè)鲩L知識(shí)。在此,我們就嘗試這么去做,至于能取得多大的成功,就由我們的讀者朋友們來判斷吧。
    發(fā)表于 09-20 15:03 ?233次閱讀
    <b class='flag-5'>Linux</b> <b class='flag-5'>Shell</b><b class='flag-5'>相關(guān)</b><b class='flag-5'>面試問</b>題

    shell腳本相關(guān)資料分享

    此筆記由個(gè)人整理塞上蒼鷹_fly課程來自:正點(diǎn)原子_手把手教你學(xué)Linux一、shell腳本簡(jiǎn)介shell腳本類似windows的批處理文件
    發(fā)表于 12-23 06:17

    Linux常見調(diào)用shell腳本的三種方法

    編寫Linux下的應(yīng)用程序時(shí)有時(shí)需要調(diào)用Linux相關(guān)shell腳本,在這些腳本中通過調(diào)用
    的頭像 發(fā)表于 06-28 14:28 ?8336次閱讀

    Linux Shell腳本編程基礎(chǔ)和相關(guān)資料合集免費(fèi)下載

    本文檔的主要內(nèi)容詳細(xì)介紹的是Linux Shell腳本編程基礎(chǔ)和相關(guān)資料合集免費(fèi)下載。
    發(fā)表于 05-24 17:53 ?26次下載
    <b class='flag-5'>Linux</b> <b class='flag-5'>Shell</b><b class='flag-5'>腳本</b>編程基礎(chǔ)和<b class='flag-5'>相關(guān)</b>資料合集免費(fèi)下載

    如何創(chuàng)建和執(zhí)行一個(gè)簡(jiǎn)單的Linux shell腳本

     如果您愿意要嘗試更長的shell腳本,請(qǐng)將下面的shell腳本(并附加為PDF和ODT文件)復(fù)制到文本編輯器中,保存,使其可執(zhí)行并運(yùn)行。當(dāng)您了解更多
    的頭像 發(fā)表于 11-06 17:28 ?1.3w次閱讀

    Linuxshell腳本執(zhí)的4種方式

    Linuxshell腳本的執(zhí)行通常有4種方式,分別為工作目錄執(zhí)行,絕對(duì)路徑執(zhí)行,sh執(zhí)行,shell環(huán)境執(zhí)行。
    發(fā)表于 05-23 09:28 ?871次閱讀
    <b class='flag-5'>Linux</b>中<b class='flag-5'>shell</b><b class='flag-5'>腳本</b>執(zhí)的4種方式

    Linux系統(tǒng)命令及shell腳本實(shí)踐指南

    Linux系統(tǒng)命令及shell腳本實(shí)踐指南資料下載。
    發(fā)表于 06-01 14:47 ?28次下載

    Linux開發(fā)_Makefile規(guī)則與Shell腳本語言

    介紹Linux下Makefile編程知識(shí)點(diǎn),Shell腳本知識(shí)點(diǎn)。
    的頭像 發(fā)表于 09-17 15:40 ?1142次閱讀

    Linux命令行與shell腳本編寫

    Linux命令行與shell腳本編寫
    發(fā)表于 01-11 16:50 ?4次下載

    Linux Shell腳本經(jīng)典案例分享

    ? 作為一名 Linux 運(yùn)維工程師,會(huì)寫好的腳本不僅能提高工作效率,還能有更多的時(shí)間做自己的事。最近在網(wǎng)上沖浪的時(shí)候,發(fā)現(xiàn)大家對(duì)Shell腳本都有“心結(jié)”,要么覺得自己寫出來不好
    發(fā)表于 06-16 14:03 ?588次閱讀
    <b class='flag-5'>Linux</b> <b class='flag-5'>Shell</b><b class='flag-5'>腳本</b>經(jīng)典案例分享

    分享249個(gè)拿來即用的shell腳本

    ,電子版可以隨時(shí)拿來練習(xí)提升,是學(xué)習(xí)、提升、面試必備精品。 1、通過位置變量創(chuàng)建Linux系統(tǒng)賬戶及密碼 ? #!/bin/bash#?通過位置變量創(chuàng)建?Linux?系統(tǒng)賬戶及密碼?#$1?是執(zhí)行
    的頭像 發(fā)表于 07-07 10:52 ?1044次閱讀
    分享249個(gè)拿來即用的<b class='flag-5'>shell</b><b class='flag-5'>腳本</b>