~
ディレクトリに~
というファイルがあることに気づきました。
$ ls -la ~
...
-rw-r----- 1 x1 x1 733962240 Mar 1 17:55 ~
...
mv
またはrm
をどのようにすればいいですか?
通常の方法では削除できないファイルに関しては、かなり究極の解決策です。
ls -il
最初の列には、ファイルのiノード番号が表示されます。
find . -inum [inode-number] -exec rm -i {} \;
これにより、検証後に、指定されたiノード番号のファイルが削除されます。
チルダ展開は、単語の先頭にあるチルダ(~/~
)のみを適用するため、~
(引用符なし)としてそのファイルを参照できるはずです。
引用する(rm '~'
)またはエスケープする(rm \~
)。
これは常にこれらのいずれかです(たとえば$
の場合も)、または--
を追加して、ファイル名が引数として解釈されないようにします。rm -- -i
は、-i
という名前のファイルを削除します。現在のディレクトリ内のすべてのファイルを削除する場合のrm -- *
にも役立ちます。ファイルにそのような名前が付けられているからといって、誤ってrm -f *
となることはありません。