如何在Unix中建立名稱中帶有「#」字元的檔案?

如何在Unix中建立名稱中帶有「#」字元的檔案?

我已經嘗試了許多命令來創建文件和刪除帶有#字元的文件,但它不起作用。誰能告訴我創建然後刪除以 開頭的文件的命令#

答案1

創建/刪除帶有“有趣字元”的文件的兩種規範方法是

  1. 引用,就像亞歷克斯展示的那樣。您可以使用單引號或雙引號,這取決於您的擴充需求。反斜線可用於轉義單一有趣的字元。只要檔案名稱看起來不像選項(以破折號開頭),此操作就有效。
  2. 如果該檔案看起來像一個選項,前路徑rm ./- "./-rf ."

現代版本的 Unix 實用程式通常支援雙破折號指示選項的結束。在此類系統上,rm -- -刪除名為-.

請注意,您無法建立或刪除名稱中包含斜線或 ASCII NUL 的檔案。如果你有這樣的檔案(我看過它們),那麼你的檔案系統中的某些東西就出現了嚴重錯誤。

在您使用 hash 的特定情況下#,問題源自於 shell 將以開頭的單字解釋為#開頭外殼評論。一個好的 shell 可以讓你停用這個 shell 功能,稱為互動評論

  • 茲什:unsetopt interactivecomments
  • 重擊:shopt -u interactive_comments

有了這些,您就可以輕鬆touch #; rm #無憂。

答案2

為了使...

touch "#file"

刪除...

rm "#file"

相關內容