web-dev-qa-db-ja.com

奇妙な名前のファイルを削除するには?

POSIXメモリマッピング関数(mmap)を使用するプログラムを作成しました

プログラムはファイル(a.dat)と読み取り/書き込み用にメモリマップします。

プログラムのエラーが原因で、プログラムを実行するたびに、奇妙な名前のファイル(例:?d?P?^z??d?P?^z?) 創造された。エラーは解決されましたが、ファイルを削除できません。

コマンドラインを使用するか、ウィンドウマネージャーから選択/削除しても削除できません。

それでは、どうすれば削除できますか? Ubuntu 11.04を使用しています。

35
A. K.

rm -i -- *は、各ファイルを削除するように求めます。多くのファイルがある場合は、「*」をより狭い一致に変更できます。 --はオプションの処理を停止するため、-dという名前のファイルはrmによって正常に削除されます。

私は過去にそれを使用したことがあり、あなたが特別なキャラクターまたはそれが気に入らない2をヒットするまで機能します。

49
JimR

ls -liを使用すると、すべてのファイルをiノード別に表示できます。次に、次のコマンドを実行してファイルを削除します。

find . -inum ${INODE_NUM} -delete

安全のため、検索結果に-maxdepth 1を追加しました。

find . -maxdepth 1 -inum ${INODE_NUM} -delete
18
Felipe Alvarez

パターンとrmによる基本的な検索/確認ファイルは機能しませんか?

find . -maxdepth 1 -name "*P*d*P*z" -exec ls -a {} \; 
find . -maxdepth 1 -name "*P*d*P*z" -exec rm {} \;
0
kisna