bash 選項(標誌)的解釋

bash 選項(標誌)的解釋

我經常看到使用以下命令的腳本選項if [ -f some_file ]檢查是否some_file為文件。我的理解很模糊旗幟,但是有人能給我一個很好的解釋嗎?其他人喜歡-p,,-s我不知道它們是什麼,也無法找到關於它們的好的資源,因為單一谷歌搜尋不會產生任何好的結果。

答案1

不管你信不信,[這實際上是test命令的另一個名稱。

您可以查看man頁面:

man test

test在大多數 shell 中也是內建的 shell(並且它優先於外部 shell):

% type -a \[
[ is a shell builtin
[ is /usr/bin/[

% type -a test
test is a shell builtin
test is /usr/bin/test

bash還可以看到help test

答案2

最好的解決方案是 bash 手冊,是的,簡單的man bash.

若要查找手冊中的確切條目,請執行以下命令:

LESS=+/'^CONDITIONAL EXPRESSIONS' man bash

在 bash shell 中工作時,這也有幫助:

help test

相關內容