我用的是Kubuntu 20.04。
当我运行sudoedit /etc/fstab时,VS代码将打开一个空白文档,并且CLI立即返回(请参阅下面的详细信息)。
如果我运行export SUDO_EDITOR=nano,文档将在/etc/fstab编辑器中打开,内容如预期的那样。
如果我运行export SUDO_EDITOR=/snap/bin/code,它将再次使用空白文档打开VS代码。
我做错了什么?还是这是个窃听器?
kevin@kevcoder00 ~ $ echo $VISUAL
kevin@kevcoder00 ~ $ echo $SUDO_EDITOR
kevin@kevcoder00 ~ $ echo $EDITOR
/snap/bin/code
kevin@kevcoder00 ~ $ sudoedit /etc/fstab
[sudo] password for kevin:
sudoedit: /etc/fstab unchanged发布于 2021-10-10 17:53:23
你需要告诉编辑等待:
SUDO_EDITOR="/snap/bin/code --wait" sudoedit /etc/fstab如果没有该选项,VS代码分叉或通知已经运行的实例,并立即将控件返回到sudoedit。后者看到什么都没有改变,并删除了用于编辑目的的临时副本。(Snap可能会产生这种效果,但是VS代码本身就需要这样做。)
发布于 2021-10-10 18:41:27
或者,您可以尝试我的脚本(在您的情况下可能是过高的解决方案):
https://github.com/burianvlastimil/sudoedit-enhanced
我很努力地把它记录下来,最近的修订是稳定的。
但是,sudoedit不能很好地处理VS代码,不幸的是,正如我被要求提供的详细信息,我引用了以下评论:
@StephenKitt确定。大约一年前我测试的就是这里。用
root编辑code的唯一方法是当时通过sudo code /path/to/file进行编辑。有什么改变吗?我当然想知道。
https://unix.stackexchange.com/questions/672663
复制相似问题