[ 備忘録 / python ] 0byte ファイルを削除する
0byte のファイルを削除する必要がでたので、その時に使った Python スクリプトのメモ。
import os
for filename in os.walk('.').next()[2]:
try:
if len( open( filename ).read() ) == 0:
os.remove( filename )
except IOError:
print "cannot open %s" % filename
for の中で try-except を使っているのは、シンボリックリンクがあった場合にそれを開こうとすると例外が出てしまうから。ほかに、誰かがファイルを開いている時も、たぶんエラーが出ます ( MS-Word とかでほかの人が編集してるときなど )。開けなかった場合はメッセージがコンソールに出力されるのでそれをヒントに原因を推測してください。
この後で教えてもらったんだけど、Linux なら↓のコマンドで行けるらしい。
find . -size -1 -exec rm {} \;
ま、OS 非依存のスクリプトということで(´・ω・`)
| 固定リンク
この記事へのコメントは終了しました。
コメント