宿題
Pythonでやってみた。
課題1 指定したディレクトリ以下の空ディレクトリを全て削除しなさい
import os def remove_dir_empty(root): for name in os.listdir(root): path = os.path.join(root, name) if os.path.isdir(path): remove_dir_empty(path) # 再帰呼び出し if os.listdir(path) == []: os.rmdir(path) # ディレクトリが空なら削除 remove_dir_empty(".")
あんまパイソンっぽくないなあ。。pythonにはos.walk()っていう便利な関数(ジェネレータ)があるんだけど、再帰的空ディレクトリ削除には使えん
課題2. grepコマンドを作りなさい
import sys import re pat = re.compile(sys.argv[1]) files = sys.argv[2:] for f in files: for line in open(f).readlines(): if pat.search(line): print line,
すっきりしてていい感じ。