約4,000個のファイルを含むフォルダがあります。これらのファイルのいくつかはaa?
または!
文字で始まります。削除する必要がありますが、これを行う式が見つかりません。
rm -f ./?*
ただすべて削除してください。おそらくgrep
、lsを使用してパイプし、xargs
ファイルを別のフォルダに移動することができますが、これを行う適切な方法があることを願っています。?
そしてファイルの助けが必要です!
。
答え1
カラフルなものは必要ありません。?
グローバルの一部と見なされないようにエスケープしてください。
rm -f ./\?*
これは以下にも当てはまります!
。
rm -f ./\!*
またはため息で:
rm -f ./{\?,\!}*
修正する
私はあなたがgrep
提案しているというls
事実に注目したいと思います。lsの出力を解析しないでください。
答え2
私の場合、これらの文字は実際の疑問符ではなく、私のコンソールに表示できないUnicode文字です。
rm -i *
私のために作品を使用してください。これを望まない場合は、以下のように inode ごとに削除することもできます。http://www.cyberciti.biz/tips/delete-remove-files-with-inode-number.html。
索引ノードを見つけるには、次のようにします。
ls -il
次に、次のようにします。
find . -inum [inode-number] -exec rm -i {} \;