私は PowerShell を初めて使用します。フォルダーの内容を削除し、別のフォルダーからコピーしたファイルでそのフォルダーを埋める簡単なスクリプトを作成しようとすると、常にエラーが発生しますPermissionDenied
。
詳細:
+ remove-item <<<< D:\path\* -recurse
+ CategoryInfo : PermissionDenied: (save.gif:FileInfo) [Remove-Item], IOException
+ FullyQualifiedErrorId : RemoveFileSystemItemUnAuthorizedAccess,Microsoft.PowerShell.Commands.RemoveItemCommand
問題はどこにありますか? エクスプローラーから両方のフォルダーを操作できます。スクリプト ファイルから実行する場合とシェル (Windows PowerShell ISE を使用) から実行する場合の両方でエラーが発生します。ISE プロセスは私のアカウントで実行されます。私は Windows 7 Professional を実行しており、ローカル管理者です。
編集:Richard の提案を受けて、詳細モードを試してみました (効果がないようです)。
PS Z:\> $error[0] | fl * -force
PSMessageDetails :
Exception : System.IO.IOException: Not Enough permission to perform operation.
TargetObject : D:\path\file.txt
CategoryInfo : PermissionDenied: (D:\path\file.txt:FileInfo) [Remove-Item], IOException
FullyQualifiedErrorId : RemoveFileSystemItemUnAuthorizedAccess,Microsoft.PowerShell.Commands.RemoveItemCommand
ErrorDetails : Cannot remove item D:\path\file.txt: Not Enough permission to perform operation.
InvocationInfo : System.Management.Automation.InvocationInfo
PipelineIterationInfo : {0, 1}
あまり役に立つものは見当たりません (でも、とにかくヒントをありがとう)。
編集2:さて、スクリプトのソースは次のとおりです。
remove-item D:\path_A\* -recurse
copy-item D:\path_B\* D:\path_A\
以上です。remove-item はすべてのファイルに対して実行されるようです。
ベストアンサー1
試しましたか:
remove-item D:\path_A\* -recurse -force