我想通過PowerShell自動執行我的許多日常任務。我們擁有的一個過程是在幾個小時後對桌面進行成像。完成此操作後,需要將圖像文件從服務器硬盤驅動器移至網絡驅動器。我正在編寫一個應用程序作爲服務在我的機器上運行,它將調用powershell腳本並將所有內容都敲出來,只有在出現問題時才提醒我。在網絡共享上移動文件
我在服務器上爲腳本設置了一個目錄。
copy-item C:\scripts\myFile1.txt -destination C:\scripts\myFile2.txt
然而,在我的.net應用程序中,我調用腳本從我的本地機器:
RunScript(LoadScript(@"\\Server\ServerShare\FileCopy.ps1"));
隱而不宣」如果我把我的腳本,FileCopy.ps1,從服務器,它工作正常工作。這是因爲它將C:\ scripts視爲在本地計算機上。所以,我改變它:
copy-item \\Server\ServerShare\myFile1.txt -destination \\Server\ServerShare\myFile2.txt
不起作用。我添加另一條線路的腳本:
copy-item \\Server\ServerShare\myFile1.txt -destination \\Server\ServerShare\myFile2.txt
get-childitem \\Server\ServerShare | format-table name
它仍然不會複製該文件,但它確實返回服務器上的腳本目錄的內容。
於是我回到服務器,並與地方的UNC路徑運行腳本 - PowerShell會返回一個錯誤
Copy-Item : Access to the path '\\Server\ServerPath\myFile2.txt' is denied.
這似乎是問題的根源。任何想法如何解決這個問題?我以管理員身份登錄到服務器。
這是權限!謝謝基思! – deweycooter 2011-01-21 15:52:11