![ssh Mac Unix:複製帶有特殊字元和空格的文件](https://rvso.com/image/1346582/ssh%20Mac%20Unix%EF%BC%9A%E8%A4%87%E8%A3%BD%E5%B8%B6%E6%9C%89%E7%89%B9%E6%AE%8A%E5%AD%97%E5%85%83%E5%92%8C%E7%A9%BA%E6%A0%BC%E7%9A%84%E6%96%87%E4%BB%B6.png)
我遠端登入 Mac 並嘗試將音樂檔案從一個目錄複製到另一個目錄,但出現錯誤。我認為這是由空格或特殊字元引起的,但不確定。
該文件是:
01 Your Everything (feat. Louisahhh!).m4a
我嘗試了以下幾種變體來 cp 檔案(這只是重命名的測試):
cp 01\ Your\ Everything\ (feat.\ Louisahhh!).m4a dd.m4a
我收到以下錯誤:
-bash: !: event not found
謝謝閱讀!
答案1
您需要將檔案名稱括在單引號中'
或轉義所有特殊字元。
在您的範例空格中,括號和引號需要轉義。看這個清單或 shell 手冊頁以取得特殊字元及其意義的清單。
01\ Your\ Everything\ \(feat.\ Louisahhh\!\).m4a
或者您可以使用單引號
'
(不是雙引號,因為仍會解釋多個字元)。'01 Your Everything (feat. Louisahhh!).m4a'
請記住,如果文件中有單引號,則必須以不同的方式引用它。對於一個名為完成:
'It'\''s done'