一、在shell腳本成功執行前,如何中斷腳本執行?shell
使用exit命令實現。在Unix環境下的shell腳本中,0值表示成功執行。所以,在腳本終止前執行一個不帶引號的‘exit -1’命令將使腳本停止。編輯器
例如:建立以下名爲iniexit.sh的腳本ide
#!/bin/shspa
echo "hello"命令行
exit -1code
echo "bye"orm
保存並執行該腳本:ip
root@ypyu-VirtualBox:/usr/local/shellscript/code/mytest# ./iniexit.sh it
helloclass
從上面的腳本中能夠清楚地看到,在exit -1命令前,腳本執行得很好。
二、如何使用Linux命令來移除文件頭?
解答:當咱們須要刪除文件中的指定行時,‘sed’命令能夠用來解決該問題。
這個是用來刪除文件頭(文件的首行)的正確命令。
# sed '1 d' file.txt
上面命令的問題是,它會在標準輸出設備上輸出不帶首行的文件內容。爲了保存輸出到文件,咱們須要使用重定向操做符,它將幫助你將輸出重定向到文件。
# sed '1 d' file.txt > new_file.txt
好吧,其實sed命令內建的‘-i’開關就能夠幹這活,就不須要重定向符了吧。
# sed -i '1 d' file.txt
三、你怎麼檢查一個文本文件中某一行的長度?
‘sed’命令也能夠用來查找文本文件中的某一行或者檢查其長度。
‘sed -n ‘n p’ file.txt’能夠解決,這裏‘n’表示行號,‘p’打印出匹配內容(到標準輸出),該命令一般與-n命令行選項連用。那麼,怎樣來獲取長度計數呢?很明顯,咱們須要經過管道輸出給‘wc’命令來計算。
# sed –n 'n p' file.txt | wc –c
要獲得文本文件‘tecmint.txt’的第五行的長度,運行以下命令:
# sed -n '5 p' tecmint.txt | wc -c
四、能夠在Linux系統上查看到全部非打印字符嗎?你是怎麼作到的?
在vi編輯器的命令界面輸入set list命令並執行。
五、假如你是一個員工組的團隊領導,爲xyz公司工做。公司要求你建立一個‘dir_xyz’目錄,讓該組成員都能在該目錄下建立或訪問文件,可是除了文件建立者以外的其餘人不能刪除文件,你會怎麼作?
答:這真是個有趣的工做方案。好吧,上面所講的方案,咱們須要經過下面的步驟來實施,這簡直就是小菜一碟。
# mkdir dir_xyz # chmod g+wx dir_xyz # chmod +t dir_xyz
第一行命令建立了一個目錄(dir_xyz),上面的第二行命令讓組(g)具備‘寫’和‘執行’的權限,而上面的最後一行命令——權限位最後的‘+t’是‘粘滯位’,它用來替換‘x’,代表在這個目錄中,文件只能被它們的擁有者、目錄的擁有者或者是超級用戶root刪除。
Linux文件權限最後的t表示文件粘滯位,粘滯位最經常使用是應用於目錄。當目錄被設置粘滯位後,路徑下的文件只有文 件的owner,或者root 纔可以重命名、刪 除文件。若是沒有粘滯位,任何用戶,不 管是否是owner,只要有路徑的寫/執行權 限就能夠重命名、刪除文件。