簡體   English   中英

如何從批處理文件寫入Windows網絡共享?

[英]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")

請參閱使用Python,如何訪問Windows網絡上的共享文件夾?

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM