2011-08-29 13 views
10

すべてのファイルのファイルアクセス権を現在のディレクトリツリーから変更したいとします。 os.chmod()を使用して各ディレクトリを開いてファイルを開き、アクセス権を変更しようとしていますが、エラーが発生します。pythonでのファイルのアクセス許可の変更

import os 
import stat 

for files in os.walk('.'): 
     os.chmod(files,stat.S_IXGRP) 

私が手にエラーがある:あなたは間違ってos.walkを使用している

File "delhis.py", line 4, in ? os.chmod(files,stat.S_IXGRP) TypeError: coercing to Unicode: need string or buffer, tuple found 
+1

あなたはどのようなエラーが出るのですか? – Nobody

+1

お得な情報を教えてください。 – lukad

+1

エラーは何ですか? –

答えて

24

for dirpath, dirnames, filenames in os.walk('.'): 
    for filename in filenames: 
     path = os.path.join(dirpath, filename) 
     os.chmod(path, 0o777) # for example 
+0

が見つかりました。chmodを実行する代わりに、現在のコードを 'print files'に変更してください。 – Ben

0

次のようにして、代わりにOS固有の関数呼び出しを使用することができます。

os.system('chmod 777 -R *') 
関連する問題