【发布时间】:2022-08-20 21:53:54
【问题描述】:
当我在 cmd 中使用此命令 pwsh -c echo hello 时,我得到以下输出:
C:\\>pwsh -c echo hello
hello
C:\\>
我最后没有换行 当我在 powershell 上运行它时:
PS C:\\> pwsh -c echo hello
hello
PS C:\\>
所以我认为问题出在cmd。我知道这不是一个问题并且有一个简单的解决方法,但是我有一些程序使用 cmd 来访问 powershell 并且删除该换行符并不是那么有趣。 那么是否有任何解决方法可以防止 cmd 添加该行?
-
Windows 命令处理器
cmd.exe总是在命令执行完成后输出一个空行,然后再显示下一个用户输入的提示。 Windows PowerShellpowershell.exe不这样做。因此,空行不是由执行pwsh -c echo hello或只是echo hello产生的,而是由cmd.exe本身在您的情况下打印提示C:\\>之前产生的。所以没有什么可以改变的。您可以通过在命令提示符窗口中运行来查看行为:echo Hello Yusef!& echo Is your question answered?两个输出行之间没有空行,就在提示符上方。 -
超级用户有问题How to stop the Windows command line from outputting an empty line after each command? 可以使用
echo Hello Yusef!& set /P =Is your question answered?<nul来获得没有空行的两行输出,因为提示文本Is your question answered?输出时没有换行符,所以换行符) 由cmd.exe在提示符终止带有输出提示文本的行之前输出。
标签: powershell cmd line-breaks