$* \ ||、eval 和 "\; 是什麼意思?

$* \ ||、eval 和 "\; 是什麼意思?

您能解釋一下下面的程式碼嗎?和 是$* \ ||什麼意思?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和搜尋這些字元來找到。總結如下:

$*擴展為傳遞給腳本的命令列參數

\將下一個字元從 shell 的解釋中轉義,在這些情況下,它將目前命令列延續到下一行。

||是 shell 的「或」運算子。||只有當前面的命令失敗時才會執行後面的命令||

eval用空格連接所有參數。然後重新解析並執行命令。它似乎沒有理由出現在這個腳本中。

"\ 其實彼此並沒有什麼關係。引號終止前面的文字字串,反斜線將指令繼續到下一行。

請諮詢man sh更多詳細資訊以及這些功能的正確使用方法。

相關內容