使用批处理文件调整远程计算机上PowerShell窗口的大小

使用批处理文件调整远程计算机上PowerShell窗口的大小,shell,powershell,batch-file,scripting,Shell,Powershell,Batch File,Scripting,想知道是否有人知道如何/是否有可能使用我用来运行的批处理文件来调整我在远程计算机上打开的PowerShell窗口的大小 1 @ECHO OFF 2 title Remote Start ProgramName Server 3 cd "C:\IT\FOLDER" 4 5 @ECHO OFF 6 SET /p _computer=Computer Name: 7 8 @ECHO "Launching Program Server On Remote PC %_comp

想知道是否有人知道如何/是否有可能使用我用来运行的批处理文件来调整我在远程计算机上打开的PowerShell窗口的大小

1   @ECHO OFF 
2   title Remote Start ProgramName Server
3   cd "C:\IT\FOLDER"
4  
5   @ECHO OFF
6   SET /p _computer=Computer Name:
7
8   @ECHO "Launching Program Server On Remote PC %_computer%"
9
10  start PowerShell.exe .\psexec -i \\%_computer% '"C:\Program Files\ProgramFolder\programserver.exe"'
11  
12  @ECHO "Launching ClientSideProgram on Local Machine"
13  start "" "C:\Program Files\ProgramFolder\programclient.exe"
14
15  PAUSE
16
17  start "" PowerShell.exe .\pskill \\%_computer% programserver.exe
18  ECHO "Program Server Terminated"
19
20  PAUSE
就我所测试的而言,它可以工作,但当我在第10行启动PowerShell.exe时,它会像预期的那样打开一个PowerShell。这是我想将powershell大小调整为尽可能小的powershell,这样当它打开时就不会有那么大的麻烦了

提前感谢任何人的帮助


编辑:如果无法调整大小,我可以“隐藏”它吗?还是把它移到后台?

从我的同事那里找到了答案。很明显,很容易把星星最小化

start /MIN

这是一个批处理文件,它只是使用PowerShell调用psexec

或者使用PowerShell远程处理---

启动交互式会话以启动与 在单个远程计算机上,使用Enter-PSSession cmdlet。例如 要启动与Server01远程计算机的交互式会话, 类型:

运行远程命令要在一台或多台计算机上运行命令,请使用 调用命令cmdlet。例如,要运行Get-UICulture命令 在Server01和Server02远程计算机上,键入:

---或者使用PSexec并以该远程主机为目标

使用psExec打开远程命令窗口

psExec\computer cmd

在远程计算机上执行命令行进程

PSRemoting的大部分要求您使用目标系统上本地管理组中的帐户。然而,也有一些情况并非如此

在PSRemoting上使用PSExec的唯一原因是没有启用PSRemoting,并且需要在登录用户的上下文中运行代码

# PowerShell only via PSRemoting
$TargetComputerName  = Read-Host -Prompt 'Enter a computer name.'
Invoke-Command -ComputerName $TargetComputerName -ScriptBlock {
'C:\Program Files\ProgramFolder\programserver.exe'
} -Credential 'contoso\administrator'

# PSExec only
psexec \SomeTargetComputerName -c C:\Program Files\ProgramFolder\programserver.exe
使用PSRemoting时,targethost上不会显示任何内容。 使用PSExec命令,targethost上永远不会显示任何内容

如果使用PSExec在目标主机上登录用户的上下文中运行,则调用PowerShell.exe时将显示内容,除非使用


这表示您不熟悉PowerShell和PowerShell远程处理命令。请访问YouTube并查看,,嗯,

上的一些演讲,你在用什么?为什么使用
Start
psexec是一个powershell工具,所以我想我必须彻底使用powershell。我需要启动的原因是我希望这两个程序同时启动。我不想在客户端打开之前等待服务器关闭。如果我不包括开始,它将打开服务器,并挂起该块,直到服务器关闭,它才会继续下一位@Compo,并且不是PowerShell专用工具,名称中的
PS
与PowerShell没有关系。忽略PowerShell.exe将无法在远程计算机上启动程序。除非你能向我解释为什么要重写这个脚本,或者以什么方式重写这个脚本,否则它必须像我所希望的那样运行。我相信你有没有费心阅读这两个实用程序的使用信息,我之前的评论中有两个链接页面。您还将注意到,最新版本仍然与Windows Vista兼容,您应该知道Windows Vista没有提供
PowerShell
,而且这两个页面都没有提到
PowerShell
。您也可以打开一个
cmd.exe
窗口,然后输入
PsExec
PsKill-
来阅读他们的帮助信息。当信息出现在
cmd.exe
中时,您会注意到这两个实用程序在
PowerShell
上工作时没有任何要求。请提供反馈。当然是PowerShell的新手,我从未声称自己有知识,只是做了一些需要做的小工作,同时学到了很多东西,感谢您的深入澄清。我知道PSRemoting是禁用的,这使我找到并最终使用PsExec。
Invoke-Command -ComputerName Server01, Server02 -ScriptBlock {Get-UICulture}
# PowerShell only via PSRemoting
$TargetComputerName  = Read-Host -Prompt 'Enter a computer name.'
Invoke-Command -ComputerName $TargetComputerName -ScriptBlock {
'C:\Program Files\ProgramFolder\programserver.exe'
} -Credential 'contoso\administrator'

# PSExec only
psexec \SomeTargetComputerName -c C:\Program Files\ProgramFolder\programserver.exe