答:一個Shell腳本是一個文本文件,包含一個或多個命令。作為系統(tǒng)管理員,我們經(jīng)常需要使用多個命令來完成一項任務(wù),我們可以添加這些所有命令在一個文本文件(Shell腳本)來完成這些日常工作任務(wù)。
答:在Linux操作系統(tǒng),“/bin/bash”是默認(rèn)登錄shell,是在創(chuàng)建用戶時分配的。使用chsh命令可以改變默認(rèn)的shell。示例如下所示:
# chsh <username> -s <new_default_shell># chsh linuxtechi -s /bin/sh
答:在shell腳本,我們可以使用兩種類型的變量:
系統(tǒng)定義變量 用戶定義變量系統(tǒng)變量是由系統(tǒng)系統(tǒng)自己創(chuàng)建的。這些變量通常由大寫字母組成,可以通過“set”命令查看。
用戶變量由系統(tǒng)用戶來生成和定義,變量的值可以通過命令“echo $<變量名>”查看。
答:這里有兩個方法來實現(xiàn):
方法一:
2>&1 (# ls /usr/share/doc > out.txt 2>&1 )
方法二:
&> (# ls /usr/share/doc &> out.txt )
答:基礎(chǔ)語法如下:
if [ Condition ]thencommand1command2…..elseif [ condition ]thencommand1command2….elsecommand1command2…..fifi
Q:6 shell腳本中“$?”標(biāo)記的用途是什么? ?
答:在寫一個shell腳本時,如果你想要檢查前一命令是否執(zhí)行成功,在if條件中使用“$?”可以來檢查前一命令的結(jié)束狀態(tài)。簡單的例子如下:
root@localhost:~# ls /usr/bin/shar/usr/bin/sharroot@localhost:~# echo $?0
如果結(jié)束狀態(tài)是0,說明前一個命令執(zhí)行成功。
root@localhost:~# ls /usr/bin/sharels: cannot access /usr/bin/share: No such file or directoryroot@localhost:~# echo $?2
如果結(jié)束狀態(tài)不是0,說明命令執(zhí)行失敗。
答:在if-then中使用測試命令( -gt 等)來比較兩個數(shù)字,例子如下:
#!/bin/bashx=10y=20if [ $x -gt $y ]thenecho “x is greater than y”elseecho “y is greater than x”fi
Q:8 shell腳本中break命令的作用 ?
答:break命令一個簡單的用途是退出執(zhí)行中的循環(huán)。我們可以在while和until循環(huán)中使用break命令跳出循環(huán)。
新聞熱點
疑難解答