[英]How to write to a Windows network share from a batch file?
我在本地計算機上有一個批處理腳本,它在Windows網絡共享上調用Python腳本,並且應該在那里寫一個文件。 如果我在沒有批處理文件的情況下運行Python腳本,它會成功運行。 如果我運行批處理文件,我收到此錯誤:
Traceback (most recent call last):
File "python_script.py", line 25 in <module>
IOError: [Errno 13] Permission denied: 'outfile.txt'
Python腳本與“outfile.txt”位於同一目錄中。
以下是Python腳本中的代碼:
outfile = open("outfile.txt", "w")
我也嘗試了一個絕對路徑,但是我收到“找不到文件”的錯誤:
outfile = open("\\server\folder\subfolder\outfile.txt", "w")
我不認為這是一個權限問題,因為如果我只是以同一個用戶身份登錄“手動”運行python腳本,它會將outfile寫入網絡共享。 使用批處理文件我錯過了什么?
當您“調用”python腳本時,實際上是從當前目錄執行它。 由於我不認為你可以在沒有映射的情況下cd
到網絡共享,這可能會導致權限問題。
絕對路徑將起作用,但您只需要正確指定路徑。 在python中,反斜杠是一個轉義字符,因此您必須轉義反斜杠或使用正斜杠:
outfile = open("//server/folder/subfolder/outfile.txt", "w")
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.