以下のコードについて説明していただけますか? $*
\
||
、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
それらの文字を探して検索することで見つけることができます。要約は次のとおりです。
$*
スクリプトに渡されるコマンドラインパラメータに展開されます
\
次の文字をシェルの解釈からエスケープします。この場合、現在のコマンド ラインが次の行に継続されます。
||
はシェルの「または」演算子です。 の後のコマンドは、||
の前のコマンドが||
失敗した場合にのみ実行されます。
eval
すべての引数をスペースで連結します。次に、コマンドを再解析して実行します。このスクリプトには、引数が必要な理由はないようです。
"\
実際には、互いに関連はありません。引用符は前のリテラル文字列を終了し、バックスラッシュはコマンドを次の行に継続します。
man sh
これらの機能の詳細と適切な使用方法についてはお問い合わせください。