2016-12-13 7 views
0

私はPythonで多くの経験を持っていないので、ばかげた質問かもしれません。私のスクリプト内のファイルへの書き込みしようとしているエラー13無関係のフォルダに書き込もうとするとアクセス許可が拒否される

イム、私は、それは動作しますが、彼のフォルダからスクリプトを実行する場合、私は別のフォルダからそれを実行した場合しかし、私はエラー13 persmissionがCMDに

すなわちを否定してい:

cd C:\Users\user010\Perforce\Build\LS3\ 
py Build_jenkins.py 

作品が、

cd C:\Program Files (x86)\Jenkins\workspace\LC3.3 Test\Qt\main 
py C:\Users\user010\Perforce\Build\LS3\Build_jenkins.py 

doesntの仕事。私は、パブリックフォルダにスクリプトやファイルを移動しようとしている、同じエラー:

Traceback (most recent call last): 
    File "C:\Users\Public\Documents\Build\LS3\Build_jenkins.py", line 159, in <module> 
    Variables.Sauvegarder() 
    File "C:/Users/Public/Documents/Build/LS3/../Common\Variables.py", line 87, in Sauvegarder 
    gArbre.write(NOM_FICHIER) 
    File "C:\Python34\lib\xml\etree\ElementTree.py", line 761, in write 
    with _get_writer(file_or_filename, encoding) as write: 
    File "C:\Python34\lib\contextlib.py", line 59, in __enter__ 
    return next(self.gen) 
    File "C:\Python34\lib\xml\etree\ElementTree.py", line 798, in _get_writer 
    errors="xmlcharrefreplace") 
PermissionError: [Errno 13] Permission denied: 'Variables.xml' 
コードは私のメインのファイルで Variables.Sauvegarder()

と変数で:

import xml.etree.ElementTree as ET 
gArbre = ET.parse("Variables.xml") 
def Sauvegarder(): 
    gArbre.write("Variables.xml") 

編集:私は忘れてしまった重要な詳細(C:/ Users/Public/Documents/Build/LS3 /../ Common \ Variables.xml)

+0

標準ユーザーは 'C:\ Program Files(x86) 'のフォルダへの書き込みアクセス権を持っておらず、そこにデータファイルを書き込んではいけません。 – eryksun

+0

あなたが実行している2つの場所から[windows folder permissions](http://superuser.com/questions/364083/windows-list-files-and-their-permissions-access-in-command-line)を見るとあなたからの 'py'コマンドは、なぜこれがうまくいかないかを知るべきです。 – xortion

+0

'NOM_FICHIER'とは何ですか、それはフォルダですか? – haifzhan

答えて

0

正直なところ、私はよく分からないWindowsのコンピュータ(Macや他のLinuxベースのシステムの場合はsudoを使用します)管理者としてコマンドを実行しようとしています(runasコマンドと管理者priveledgesのアカウント名を使用してください)。

+0

あなたはコメントとして投稿することができます – haifzhan

+0

@HaifengZhang何が違いは? (私はこれを意味するわけではありません、私は本当に好奇心が強い、今日は参加したので、私はまだすべての礼儀のルールを知らない)ありがとう。 – Noah

関連する問題