如果在腳本文件中加入命令“set -x”, 那麼在set 命令之後執行的每一條命令以及加在命令行中的任何參數(包括變量和變量的值)都會顯示出來。每一行之前都會加上加號(+),提示它是跟蹤輸出的標識。在子Shell中執行的Shell跟蹤命令會加上兩個加號即“++”。
如:
#!/bin/sh
set -x
echo -n "Can you write device drivers?"
read answer
answer=`echo $answer | tr [a-z] [A-Z]`
if [ $answer = 'Y' ]
then
echo "Wow, you must be very skilled"
else
echo "Neither can I, I'm just an example shell script"
fi
用xtrace(-x) 選項可以確認代碼是否按照設計預期運行,如果只是想看看正在運行的腳本文件的代碼,那麼Shell重的冗餘選項-v是非常有用的。關閉和打開選項的句法是相反的,使用如-x的減號來打開一個選項,也可使用加號,例如+x來關閉某個選項。
注:賦值是不能用空格。如answer=`echo $answer | tr [a-z] [A-Z]`