透過 SSH 刪除帶有保留字元的文件

透過 SSH 刪除帶有保留字元的文件

在開發伺服器端應用程式時,我不小心創建了幾個名稱與此類似的檔案:

<?php echo $_GET[\'team\'] ?>files.json

即使我添加了必要的反斜線來嘗試rm這些文件,終端也會說這些文件不存在。我的 FTP GUI 也不會刪除它們。

我希望能得到有關如何處理這種情況的幫助 - 我無法透過 Google 或 Stack Overflow 找到任何資訊。

答案1

一種常見的方法是使用 Perl 或 Ruby 之類的工具來刪除檔案:

perl -e 'unlink("random crazy file")'
ruby -e 'File.unlink("random crazy file")'

這避免了整個 shell 的事情。

另一個簡單的方法是使用像 bash 這樣的互動式 shell,輸入rm fi,按 Tab 鍵,然後讓 bash 為您完成檔案名稱。這句話引用得好。

答案2

我本可以使用更精確的模式,但這就是我所做的:

ended up備份合法的 JSON 檔案並在子目錄中建立一個 perl 腳本,該腳本將刪除該目錄中的所有 JSON 檔案:

$filepath= "../*.json";
@jsonPattern=glob($filepath);
unlink @jsonPattern;

然後我透過 cd-ing 進入該子目錄並輸入perl nameOfMyScript.perl

相關內容