如何从 cmd.exe 运行 PowerShell“multiline-oneliner”?

如何从 cmd.exe 运行 PowerShell“multiline-oneliner”?

我想从 cmd.exe 复制/粘贴一些
PowerShellWrite-Output "first line"命令Write-Output "second line"

最基本的方法是:

powershell  -NoProfile  -Command  "Write-Output 'first line'";  
powershell  -NoProfile  -Command  "Write-Output 'second line'";  

运行完美,但每个命令都会启动一次 PowerShell。
一个很好的改进是:

powershell  -NoProfile  -Command  "Write-Output 'first line'; Write-Output 'second line'"  

但是一些漂亮的格式怎么样?

powershell -NoProfile -Command "
    Write-Output 'first line';
    Write-Output 'second line';
"  

我尝试了 `(PowerShell 行继续符)和 ^(cmd.exe 行继续符)的几种组合,但没有成功。

有人有想法吗?

答案1

我通过将此文本粘贴到 CMD 中来完成此操作:

powershell -NoProfile -Command ^
    Write-Output 'first line'; ^
    Write-Output 'second line';
                                   <== this is an empty line

粘贴时文本末尾必须留空最后一行,以避免需要按 键 Enter执行。手动输入此长命令时则不适用。

执行时看起来像这样:

在此处输入图片描述

相关内容