在VSCode终端执行dir /p报错,求PowerShell中等价命令?
问题解决:PowerShell中替代cmd dir /p的方法及VSCode终端选择
一、PowerShell中等价于dir /p的实现
在PowerShell里,dir是Get-ChildItem的别名,它不识别cmd风格的/p参数(会被当成路径解析,因此报错找不到C:\p)。要实现分页显示目录内容,有两种常用方式:
- 用管道结合
more命令,和cmd的dir /p体验一致:
操作:按空格翻页,按dir | moreq退出分页。 - 使用PowerShell原生的
Out-Host -Paging,支持上下箭头逐行滚动,功能更灵活:
操作:按上下箭头查看内容,按dir | Out-Host -Pagingq退出。
二、VSCode默认终端是否需要切换到cmd.exe?
取决于你的使用习惯:
- 若更偏好cmd的命令语法和操作逻辑,直接切换即可:
- 在VSCode中按下
Ctrl+Shift+P打开命令面板 - 输入
Terminal: Select Default Profile - 选择
Command Prompt作为默认终端
- 在VSCode中按下
- 若想利用PowerShell的高级功能(比如对象操作、脚本能力),建议适应PowerShell的语法:
比如你提到的“wget”保存文件,PowerShell里的wget是Invoke-WebRequest的别名,正确保存文件的命令是:
或者直接用完整命令:wget "目标URL" -O "保存的文件名"Invoke-WebRequest -Uri "目标URL" -OutFile "保存的文件名"
三、在PowerShell中临时调用cmd的dir /p
如果只是偶尔需要用cmd的dir /p,不用切换终端,直接在PowerShell里执行:
cmd /c dir /p
(/c参数表示执行完cmd命令后返回PowerShell)
内容的提问来源于stack exchange,提问作者Trent Tompkins
相关产品推荐
相关产品推荐

