読み取り専用ファイルを削除する

 SVN管理しているフォルダから、.svnフォルダを削除すべくスクリプトを書いてみる。リポジトリURLが変更になったので、.svnフォルダ内のリポジトリ情報を消すべく実施。

 こちらのサイトを、まず参照。すごくわかりやすい。

 これでばっちり。と思いきや、読み取り専用ファイルは、os.remove()で削除ができないもよう。次のサイトを参照して、読み取り専用ファイルかの判定をいれ、読み取り専用の場合は、書き込み権限を渡してから削除するように変更。

if not os.access(filename, os.W_OK):
  print filename, 'is read only!'
  os.chmod(filename, 0777)

 これで、目的は達成。うまく .svn フォルダを削除する事ができました。