2011-06-28 39 views
0

任何人都可以爲我翻譯或解釋下面的unix腳本,當我真的在solaris服務器上運行腳本時,它給了我服務器名稱,但不能確定這個腳本是如何工作的,任何人都可以用簡單的方式解釋它寶寶語言?由於如何翻譯主機名solaris?

TEXTDOMAIN=SUNW_OST_OSCMD export TEXTDOMAIN 

if [ $# -eq 0 ]; then 
     /bin/uname -n 
elif [ $# -eq 1 ]; then 
     /bin/uname -S $1 
else 
     echo `/bin/gettext "Usage: hostname [name]"` 
     exit 1 
fi 

回答

2

$#讀取命令行參數

,如果沒有呼叫uname -n

如果有一個呼叫uname -S $1(這是命令行參數。)

man uname發現這些電話的區別。

+0

命令行是/usr/bin/hostname.sh,你的意思是如果找不到hostname.sh,那麼調用uname -n,如果找到然後調用uname -S「/ usr/bin /hostname.sh「........我正確嗎? –

+0

@Big Beetle Fan我知道你發佈的腳本是/ usr/bin/hostname,因爲我說它只是調用'uname -n'或'uname -S $ 1',這取決於你是否使用參數調用hostname,例如, 'hostname foo' – Raoul

+0

感謝隊友,還有一個問題,還有其他條件,這個條件是否會滿足呢?我的理解是,if和elseif將覆蓋所有的情況... –

1

如果腳本與0參數執行 它只會那就運行uname manpage打印您的系統名稱

如果腳本與1個參數 執行它會改變你的系統名稱(必須是超級用戶)

其他打印用法