将 Powershell 的默认文本编辑器更改为 Notepad++

问题描述 投票:0回答:1

我想使用 Notepad++ 而不是 Notepad 来编辑 Kubernetes 中的 Pod 配置。

kubectl edit pods my-pod

我尝试更改 EDITOR 环境变量,但遇到各种错误,但都不起作用。

  1. 我尝试使用 GUI 手动添加 EDITOR 环境变量。
  2. 我尝试通过命令行添加它 -
    [System.Environment]::SetEnvironmentVariable("EDITOR", "C:\Program Files\Notepad++\notepad++.exe", "User")
  3. 我尝试将其添加到我的 Powershell 配置文件中,例如:
    $env:EDITOR = "C:\Program Files\Notepad++\notepad++.exe"

我尝试将我的命令封装在

"
'"
中。似乎没什么作用。

我收到如下错误:

“C:\Program”未被识别为内部或外部命令,

'"C:\Program Files\Notepad++ otepad++.exe"' 不被识别为内部或外部命令,

执行此操作的正确语法是什么?

操作系统: Windows 11 企业版 23H2

windows powershell
1个回答
0
投票

看起来

kubectl
假设通过环境变量
EDITOR
指定的可执行文件路径不包含空格并且任何通过嵌入式引用使用此类路径的尝试都不起作用,因为这会导致引用/转义这些引号(奇怪的是,似乎使用 POSIX-shell 语法)。

因此,解决方案应该是使用路径的

短(8.3)版本,您可以按如下方式获取该路径(应该与您的[System.Environment]::SetEnvironmentVariable()

调用类似):

$env:EDITOR = (New-Object -ComObject Scripting.FileSystemObject).GetFile('C:\Program Files\nodejs\node.exe').ShortPath
    
© www.soinside.com 2019 - 2024. All rights reserved.