
PowerShell 세션을 시작하기 위해 로컬 데스크톱에 저장할 수 있는 두 개의 파일을 만들려고 합니다.
Windows Server 2008과 Windows Server 2012는 모두 Server Core 설치입니다.
현재 Powershell을 열고 다음을 입력할 수 있습니다.
Enter-PSSession -computername Win2012SrvCore -credential administrator
이를 사용하여 명령을 연결하고 실행할 수 있으며 모든 것이 훌륭합니다.
내가 시도한 것은 다음과 같습니다.
Win2012SrvCore1.ps1
다음을 사용하여 호출되는 파일을 만듭니다 .
$passwd = convertto-securestring -AsPlainText -Force -String MYPASSWORD
$cred = new-object -typename System.Management.Automation.PSCredential -argumentlist "administrator",$passwd
$session = new-pssession -computername Win2012SrvCore -credential $cred
Win2012SrvCore2.ps1
다음을 사용하여 호출되는 파일을 만듭니다 .
PowerShell.exe -Command Enter-PSSession -computername Win2012SrvCore -credential administrator
각 ps1
파일은 읽을 수 없는 빨간색 텍스트와 함께 빠르게 시작되고 닫힙니다.
각 스크립트에 추가하려고 했지만 PAUSE
창이 닫히는 것을 막지는 못하는 것 같습니다.
내가 하고 싶은 일은 저장된 RDP 세션과 유사하게 두 번 클릭하여 powershell 프롬프트를 열 수 있는 스크립트를 만드는 것입니다.
실행되도록 ps1 파일을 구성했습니다.
C:\WINDOWS\system32\WindowsPowerShell\v1.0\powershell.exe
어떤 도움이라도 대단히 감사하겠습니다.
답변1
$passwd = convertto-securestring -AsPlainText -Force -String MYPASSWORD
$cred = new-object -typename System.Management.Automation.PSCredential -argumentlist "administrator",$passwd
$session = new-pssession -computername Win2012SrvCore -credential $cred
한 줄을 더 추가하세요.
Import-PSSession $session
그런 다음 .PS1 파일을 저장하고 해당 파일에 대한 바로가기를 powershell.exe -noexit -File "C:\PS.ps1"
.
답변2
`-noexit'를 추가하세요
PowerShell.exe -noexit -Command Enter-PSSession -computername Win2012SrvCore -credential administrator
답변3
명령을 스크립트 파일로 저장한 다음 바로 가기에서 명령줄을 사용하도록 해보세요.
powershell.exe -noExit <filename.ps1>
이렇게 하면 바로가기가 지정된 스크립트 파일을 실행하고 스크립트 실행이 끝날 때 powershell을 종료하지 않으므로 세션이 설정된 후에도 창을 계속 사용할 수 있습니다.
이 작업을 수행하려면 PowerShell 실행 정책이 제한되지 않았는지 확인해야 합니다. 그렇지 않으면 스크립트 파일을 실행할 수 없습니다.
현재 실행 정책을 확인하려면 를 사용하여 정책을 영구적으로 변경하거나 매개변수를 powershell 명령줄에 추가하여 단일 세션에 대해 변경할 Get-ExecutionPolicy
수 있습니다.Set-ExecutionPolicy
-ExecutionPolcy
실행 정책과 그 영향에 대한 자세한 내용은 명령을 사용하여 확인할 수 있습니다 help about_Execution_Policies
.