我想使用 Notepad++ 而不是 Notepad 来编辑 Kubernetes 中的 Pod 配置。
kubectl edit pods my-pod
我尝试更改 EDITOR 环境变量,但遇到各种错误,但都不起作用。
[System.Environment]::SetEnvironmentVariable("EDITOR", "C:\Program Files\Notepad++\notepad++.exe", "User")
$env:EDITOR = "C:\Program Files\Notepad++\notepad++.exe"
我尝试将我的命令封装在
"
或 '"
中。似乎没什么作用。
我收到如下错误:
“C:\Program”未被识别为内部或外部命令,
或
'"C:\Program Files\Notepad++ otepad++.exe"' 不被识别为内部或外部命令,
执行此操作的正确语法是什么?
操作系统: Windows 11 企业版 23H2
看起来
kubectl
假设通过环境变量EDITOR
指定的可执行文件路径不包含空格并且任何通过嵌入式引用使用此类路径的尝试都不起作用,因为这会导致引用/转义这些引号(奇怪的是,似乎使用 POSIX-shell 语法)。
因此,解决方案应该是使用路径的短(8.3)版本,您可以按如下方式获取该路径(应该与您的[System.Environment]::SetEnvironmentVariable()
调用类似):
$env:EDITOR =
(New-Object -ComObject Scripting.FileSystemObject).GetFile('C:\Program Files\nodejs\node.exe').ShortPath