2011-06-28 13 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

$# 1つのコールuname -S $1があればなしコールuname -n

がある場合は、コマンドライン引数に

を読み込む(コマンドライン引数です。)

は発見するman unameを参照してください。これらの呼び出しの違い。

+0

コマンドラインが/usr/bin/hostname.shの場合、hostname.shが見つからない場合は、una​​me -nを呼び出し、見つかった場合はuname -S "/ usr/bin /hostname.sh ".......私は正しいですか? –

+0

@Big Beetle Fanあなたが投稿したスクリプトが/ usr/bin/hostnameであることを理解しています。たとえば、引数を指定してhostnameを呼び出すかどうかによって 'uname -n'または' uname -S $ 1'を呼び出します。 'hostname foo' – Raoul

+0

もう一つの質問があります。もう一つの条件もあります。それ以外の条件はまったく満たされますか?私が理解することは、ifとelseifがすべての状況をカバーすることです。 –

1

スクリプトが 0の引数で実行され、それだけではunameを実行する場合manpage印刷あなたのシステム名

スクリプトは1つの引数 で実行された場合には、(スーパーユーザーでなければならない)システム名を変更します

else use print

関連する問題