以下のコードを説明できますか?とはどういう$*
\
||
意味ですか?eval
"\;
以下は機能です
Initialization_variables
error_message
quit_error_chk
Initialization_variables $* \
|| eval error_message "Error in Initialization_variables function ..."\
; quit_error_chk 1
答え1
コメントで述べたように、これらの記号はman sh
主にこれらの文字を見つけて検索することができます。次のように要約されます。
$*
スクリプトに渡されたコマンドライン引数に展開されます。
\
シェルの解釈から次の文字をエスケープします。この場合、現在のコマンドラインを次の行に進みます。
||
シェルの「or」演算子です。||
後のコマンドは、前のコマンドが失敗した場合にのみ実行されます||
。
eval
すべてのパラメーターをスペースで連結します。その後、コマンドを再解析して実行します。このスクリプトに含める理由はないようです。
"\
実際、彼らはお互いに関係がありません。引用符は前のリテラル文字列を終了し、バックスラッシュは次の行までコマンドを続行します。
man sh
詳細については、これらの機能の正しい使用についてお問い合わせください。