Bash PowerShell启动替代文本编辑器

Bash PowerShell启动替代文本编辑器,bash,powershell,git-bash,Bash,Powershell,Git Bash,在PowerShell中以文本编辑器的形式启动记事本是“notepad README.txt”,但如果我希望使用不同的文本编辑器(由于记事本的一些明显限制),如记事本++,这将如何实现?这取决于记事本++是否在您的路径中。如果它在您的路径中,则只需执行: notepad++ readme.txt 请注意,如果您与notepad++处于同一目录中,则必须像这样执行它(安全功能): 如果没有,则需要指定notepad++的路径,例如: & 'C:\Program Files (x86)\N

在PowerShell中以文本编辑器的形式启动记事本是“notepad README.txt”,但如果我希望使用不同的文本编辑器(由于记事本的一些明显限制),如记事本++,这将如何实现?

这取决于记事本++是否在您的路径中。如果它在您的路径中,则只需执行:

notepad++ readme.txt
请注意,如果您与notepad++处于同一目录中,则必须像这样执行它(安全功能):

如果没有,则需要指定notepad++的路径,例如:

& 'C:\Program Files (x86)\Notepad++\notepad++.exe' readme.txt
如果经常这样做,您可能需要在配置文件脚本中创建别名,例如:

New-Alias e 'C:\Program Files (x86)\Notepad++\notepad++.exe'
e readme.txt

使用您想要的别名:ed、edit等。

通过@Kieth添加到上述答案中,我通常执行以下操作以打开文本文件:

Invoke-Item C:\temp\test.txt
但是这种方法的问题是默认情况下.txt扩展名与notepad.exe打开相关

可以通过Explorer、CMD或PowerShell为特定类型(例如.txt)的文件设置默认编辑器

通过浏览器

右键单击.txt文件>打开方式>选择默认程序>选择所选编辑器

通过PowerShell/CMD

可以同时使用名为assocftype的命令行实用程序将扩展映射到默认程序。首先运行assoc以获取文件关联

PS> cmd /c assoc .txt
.txt=txtfile

现在我们可以为该文件类型关联设置默认应用程序(open CommandString)

    PS>cmd /c Ftype txtfile"C:\Program Files\Sublime Text 3\sublime_text.exe" %1
一旦建立了文件关联。只需执行以下操作:

PS> ii C:\Temp\test.txt # ii alias for Invoke-Item
PS> ii C:\Temp\test.txt # ii alias for Invoke-Item