Bash
這個“-cp”命令中的“-”是什麼意思?
我在一個 Android makefile ( build/core/Makefile ) 中遇到了這個問題:
$(hide) -cp $(TARGET_ROOT_OUT)/init.recovery.*.rc $(TARGET_RECOVERY_ROOT_OUT)/
-
前面是什麼意思cp
?它可能與抑制錯誤有關,但我無法為此搜尋 Google 文件。
-
in a recipe 告訴 Make 忽略任何錯誤(請參閱食譜中的錯誤)。在這種特定情況下,
cp
將忽略 報告的任何錯誤(輸出將包含任何消息,但建構將繼續)。這僅在
-
由 Make 解釋時才有效,即它是該行中的第一個非空白字元(或它前面的字元也由 Make 解釋)。在這種情況下,$(hide)
需要考慮:如果hide
為空或@
,-cp
會有預期的效果;但是如果hide
是例如@>/dev/null
(因此命令不回顯並且其標準輸出被丟棄),-cp
將按原樣傳遞給shell並且命令將失敗。