[英]How to deal with colons “:” in filename in shell script
我有一大堆文件名中帶有“:”的文件。 當我在交互式外殼程序中時,鍵入“ \\”,然后單擊tab可以使它們被識別為命令的有效輸入,但是在外殼程序腳本中卻並非如此。
我試過了
less file:name.txt
less file\:name.txt
less 'file\:name.txt
less 'file:name.txt'
並且無法將其識別為有效文件。
但是,在交互式命令行上,我鍵入較少,然后鍵入第一個文件,然后鍵入\\,然后按TAB鍵,然后一切正常。
如何在Shell腳本中執行此操作?
使用雙引號:
less "file:name.txt"
Bash將雙引號中的值識別為完整字符串。
如果要使用文件名中帶有空格或特殊字符的文件,則可能必須使用引號。
即使您什么也沒放,這仍然有效。
您可以嘗試:減少文件並為您識別...
但是您可以在bash中使用less "file:name.txt"
作為字符串。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.