2014-08-29 149 views
1

如何在用户的默认文本编辑器中为bash脚本中的终端打开纯文本文件? xdg-open将在默认的gui编辑器中打开该文件,是否有终端编辑器的等价物?Linux打开默认终端文本编辑器

回答

3

如果系统配置正确,editor应该完成这项工作。

例如,在我的debian系统上,编辑器配置为使用nano。

$ update-alternatives --display editor 
editor - auto mode 
    link currently points to /bin/nano 
/bin/nano - priority 40 
    slave editor.1.gz: /usr/share/man/man1/nano.1.gz 
/usr/bin/emacs23 - priority 0 
    slave editor.1.gz: /usr/share/man/man1/emacs.emacs23.1.gz 
/usr/bin/vim.basic - priority 30 
    slave editor.1.gz: /usr/share/man/man1/vim.1.gz 
    slave editor.fr.1.gz: /usr/share/man/fr/man1/vim.1.gz 
    slave editor.it.1.gz: /usr/share/man/it/man1/vim.1.gz 
    slave editor.pl.1.gz: /usr/share/man/pl/man1/vim.1.gz 
    slave editor.ru.1.gz: /usr/share/man/ru/man1/vim.1.gz 
/usr/bin/vim.tiny - priority 10 
    slave editor.1.gz: /usr/share/man/man1/vim.1.gz 
    slave editor.fr.1.gz: /usr/share/man/fr/man1/vim.1.gz 
    slave editor.it.1.gz: /usr/share/man/it/man1/vim.1.gz 
    slave editor.pl.1.gz: /usr/share/man/pl/man1/vim.1.gz 
    slave editor.ru.1.gz: /usr/share/man/ru/man1/vim.1.gz 
Current 'best' version is '/bin/nano'. 

我期待它使用环境变量EDITOR,但显然不是这种情况,至少在Debian上。

+2

什么配置正确?我尝试过编辑器,但是当我在我的bashrc中使用'export EDITOR = vim'并且像crontab这样的程序使用vim时,它会打开nano。 @tripleee使用'$ EDITOR [文件名]'似乎工作。 – AkBKukU 2014-08-29 15:03:48

+0

我在一台新的虚拟机上试过了,使用'$ EDITOR [filename]'只有在配置了'EDITOR'变量时才有效。我发现设置defualt编辑器的正确方法是'sudo update-alternatives -config editor',并且你的解决方案能够工作! – AkBKukU 2014-08-29 15:10:11

+0

'别名emacs =“vim”&&别名nano =“vim”&&别名whatever =“vim”':-D – Kent 2014-08-29 15:16:32