尝试创建指向 Powershell 脚本的符号链接

尝试创建指向 Powershell 脚本的符号链接

我正在尝试通过 Powershell 脚本使用 mklink 创建到远程服务器上的 Powershell 脚本的符号链接。此链接应出现在所有用户的桌面上。

如果(!(测试路径-路径\ $ hostname \ c $ \ Users )){Copy-Item-Path“\ dsfpad \ Nagios \ Nagios_Downtime \ Nagios - Schedule Downtime.lnk”-Destination“\ $ hostname \ c $ \ Documents and Settings \ All Users \ Desktop \ Nagios - Schedule Downtime.lnk”} else {$ s = New-PSSession -ComputerName $ hostname Enter-PSSession $s Invoke-Command -Session $s -ScriptBlock {&cmd / c mklink“C:\ Users \ Public \ Desktop \ Nagios - Schedule Downtime.lnk”“C:\ WINDOWS \ system32 \ WindowsPowerShell \ v1.0 \ powershell.exe -file c:\ Nagios \ Nagios_Downtime_Window_NRDP.ps1”} exit-pssession
remove-pssession $s}

我得到了为 C:\Users\Public\Desktop\Nagios - Schedule Downtime.lnk 创建的符号链接 <<===>> C:\WINDOWS\system32\WindowsPowerShell\v1.0\po wershell.exe -file c:\Nagios\Nagios_Downtime_Window_NRDP.ps1

但是当我尝试在服务器上执行链接时,它不起作用。查看链接的目标,似乎没有目标......

有什么建议/想法吗?

答案1

这篇文章已经很老了,但我只想创建另一个调用请求的 .ps1 文件的 .ps1 文件:

在你的情况下

& cmd /c mklink "C:\Users\Public\Desktop\Nagios - Schedule Downtime.lnk" "C:\WINDOWS\system32\WindowsPowerShell\v1.0\powershell.exe -file c:\Nagios\Nagios_Downtime_Window_NRDP.ps1"

我只会使用:

"& c:\Nagios\Nagios_Downtime_Window_NRDP.ps1" | Out-File "c:\temp\C:\Users\Public\Desktop\Nagios - Schedule Downtime_lnk.ps1"

如果你无法执行该文件,你可以使用-ExecutionPolicy绕过(见下文)

PowerShell -ExecutionPolicy Bypass -File "c:\temp\C:\Users\Public\Desktop\Nagios - Schedule Downtime_lnk.ps1"

https://support.microsoft.com/en-us/help/2856739/您不能使用符号链接来运行可执行文件或执行脚本

相关内容