Bash

  • 如何在 bash 命令行上解釋?

  • October 9, 2020

如果我們在終端中輸入這樣的內容會輸出什麼

/home/user/*一些帶有 * 的字元*

例如

/home/renga/i*

我在我的腳本中傳遞了一個像這樣的變數 ( home/renga/i*),在執行時,該值與文件名一起傳遞,而不是/home/renga/i*.

是的,*被稱為“萬用字元”,它主要用作表示一個或多個字元的符號。

考慮您的範例(添加了我的命令):

ls /home/renga/i*

/home/renga目錄是這樣的

internal
inspiration
auth
unknown
liar
i*

因此,您的命令將給出如下輸出:

/home/renga/internal
/home/renga/inspiration
/home/renga/i*

如果你想訪問i*目錄或文件,你需要\在你的命令中添加一個反斜杠,,,所以命令是這樣ls /home/renga/i\*的,輸出將列出i*文件或i*目錄的內容。

您還可以使用引號來避免匹配文件名。所以它會是這樣的:

ls /home/renga/"i*"

您可以在此處閱讀有關萬用字元的更多資訊

引用自:https://unix.stackexchange.com/questions/613461