我可以将 Powershell 设置为 Far Manager 的默认 shell 吗?
答案1
使用 Far Manager 中的 PowerShellFar,您可以直接从命令行使用前缀调用 PowerShell 命令ps:
。即:
Commands with console output, prefix ps:
ps: Get-Date
ps: 3.14 / 3
ps: [math]::pi / 3
Commands with viewer output, prefix vps:
vps: Get-Process
vps: Get-ChildItem C:\TEMP\LargeFolder -Recurse -Force
Commands starting UI or background jobs normally use prefix ps:
ps: $Far.Msg("Hello world!")
ps: Get-Process | Out-FarList -Text Name | Open-FarPanel
ps: Start-FarJob { Remove-Item C:\TEMP\LargeFolder -Recurse -Force }
如果您预计输出会很长,请考虑以 方式启动 Far Manager Far.exe /w
。
最后,查看内置的 PowerShellFar 帮助、部分Command line
和FAQ
。您可以定义一些加速器。例如,我使用[Space]
插入ps:
空命令行的加速器。因此,实际上我只需再输入 1 个符号。这有点不方便,但它可以通过手头的标准 CMD shell 完美地弥补,CMD 并没有消失,尤其是在 Far Manager 中。
答案2
到目前为止还没有提到的选项(它不是很好,因为开箱即用,没有自动完成功能),但你可以输入
far:config
并向下滚动直到找到此设置:
System.Executor.Comspec │string │%COMSPEC%
System.Executor.ComspecArguments │string │/S /C "{0}"
您可以像这样更改它:
System.Executor.Comspec │string │powershell
System.Executor.ComspecArguments │string │-c "{0}"
这将允许您直接从 FAR shell 运行 PowerShell 命令。
答案3
PowerShellFar允许您将 PowerShell 集成到 Far Manager 中。
PowerShellFar 将 Far Manager 丰富的基于控制台的用户界面与 Windows PowerShell 的全部功能完美地集成到这个原始文本友好环境中。