
ホーム ディレクトリに という名前の奇妙なファイルがあります。Linux を使用しています。試してみましたが と表示されます。\e[m
どうすれば削除できますか?rm
no such file or directory found
答え1
ここに投稿された他の回答がどれも機能しない場合は、いつでも inode に基づいてファイルを削除してみることができます。
それを行うには:
- を実行して、ファイルの inode を見つけます
ls -i
。inode 番号が123456
であると仮定します\e[m
。 - inode 番号に基づいてファイルを削除します。 または
find -inum 123456 -delete
のいずれかを実行しますfind -inum 123456 -exec rm {} \;
。
答え2
正直なところ、最も簡単なのは、シェルのグロビングをバイパスするファイル マネージャーを使用することです。
シェルを使用する場合は、シェル補完システムを使用してみてください (そのようなシェルを使用していると仮定します)。 のようにrm [TAB]
、シェルにメニューがあり、メニューから選択したり、メニューから切り替えたりできる場合は、シェルが認識するテキスト表現の補完を取得できるはずです。
答え3
考えられる方法:
rm \\e\[m
または
rm '\e[m'
または
rm "\\e[m"
答え4
glob 拡張を使用できます。 を試してみてls *[[]m
、このファイルのみが返される場合は、 を安全に実行できますrm *[[]m
。
問題のあるファイルが上記のls
コマンドでリストされていない場合は、エスケープが含まれていることは確実であり、「m」は実際にはリテラル m ではありません (および/または は[
リテラル ではありません[
)。