Терминатор не выполняет команду, в то время как Lxterminal

Использование Ubuntu 12.04 с fluxbox, установленным из mini iso, без DE.

Проблема заключается в следующем:

В моем меню Fluxbox у меня есть следующие две строки:

[exec] (Textfile) {/usr/bin/terminator -e /usr/bin/nano /home/me/Documents/Directory/Textfile}
[exec] (Textfile) {/usr/bin/lxterminal -e /usr/bin/nano /home/me/Documents/Directory/Textfile}

Если я использую lxterminal, текстовый файл открывается в терминале в редакторе nano. Если я использую терминатор, текстовый файл не открывается и терминатор тоже не открывается. Nano открывается, когда я использую следующую строку:

[exec] (Textfile) {/usr/bin/terminator -e /usr/bin/nano}

Если терминатор уже открыт и я набираю:

/usr/bin/nano /home/me/Documents/Directory/Textfile

текстовый файл открывается в нано.

Кто-нибудь знает, как заставить терминатор действовать так же, как lxterminal?

1 ответ

Решение

Если lxterminal работает, как вы говорите, я склонен думать, что это ошибка.

То, как вы написали команды, вы должны использовать -x вместо -e:

terminator -x nano /some/path

Если -e используется, полная команда должна быть задана в виде одной строки:

terminator -e "nano /some/path"

Из terminator man-страница:

-e, --command=COMMAND
      Runs  the  specified  command  instead  of your default shell or
      profile specified command

-x, --execute COMMAND [ARGS]
      Runs the rest of the command line instead of your default  shell
      or profile specified command.

В этом отношении терминатор похож на терминал XFCE или терминал GNOME.

На вторую мысль кажется lxterminal является следующее xterm поведение, но не документирование это четко. От man lxterminal:

-e STRING --command=STRING --command STRING
   This option specifies the program (and its command line arguments)
   to be run in the terminal. Except in the --command= form, this must
   be the last option on the command line.

man xterm говорит это более четко:

-e program [ arguments ... ]
       This  option  specifies  the  program  (and  its  command  line
       arguments)  to  be  run  in the xterm window.  It also sets the
       window title and icon name to be the basename  of  the  program
       being  executed  if  neither -T nor -n are given on the command
       line.  This must be the last option on the command line.
Другие вопросы по тегам