Windows 在Powershell中将文件从一台计算机复制到另一台计算机
我目前正在一台计算机上生成文档,并在脚本中使用以下命令将其发布到web服务器:Windows 在Powershell中将文件从一台计算机复制到另一台计算机,windows,powershell,iis,Windows,Powershell,Iis,我目前正在一台计算机上生成文档,并在脚本中使用以下命令将其发布到web服务器: net use "\\someShare" PASSWORD /user:username del /S /Q "\\someShare" xcopy /E /Y Documentation\html\* "\\someShare\" 然而,在脚本中使用纯文本形式的密码感觉是一个非常糟糕的主意,因此我正在寻找当前解决方案的替代方案。想法 我绝对希望有一个使用某种访问控制的解决方案,因为应该允许许多不同的人将自己的文
net use "\\someShare" PASSWORD /user:username
del /S /Q "\\someShare"
xcopy /E /Y Documentation\html\* "\\someShare\"
然而,在脚本中使用纯文本形式的密码感觉是一个非常糟糕的主意,因此我正在寻找当前解决方案的替代方案。想法
我绝对希望有一个使用某种访问控制的解决方案,因为应该允许许多不同的人将自己的文档发布到web服务器上,但不要弄乱彼此的文档。如果脚本以交互方式运行,您可以要求凭据使用,并使用新的PSDrive cmdlet:
$cred=get-credential
New-PSDrive -Name Z -PSProvider FileSystem -Root \\server\share -Credential $cred # you may add -Persist to have a peristent drive
如果希望脚本在没有交互的情况下运行,则必须将凭据保存到文件中,例如:
$Cred.Password | ConvertFrom-SecureString | Set-Content $env:USERPROFILE\$env:USERNAME.txt
当您需要通行证时:
$Pass = Get-Content $env:USERPROFILE\$env:USERNAME.txt | ConvertTo-SecureString
$Cred = New-Object System.Management.Automation.PsCredential("username@domain.com",$Password)
这不是一个交互式脚本。第二个解决方案似乎很好。我要试试看!由于这是一种按用户机制,一个用户不能使用另一个用户保存的凭据