Ответ вида: не делайте этого. Как Вы видите, это дает проблемы с различиями в клавиатуре. Я также забочусь с паролем root (иногда должен был загружаться, когда никакое отображение клавиатуры не находится в силе), так, чтобы никакие "невозможные" символы не появлялись.
Поскольку нет команд вызываемых EMACS -NW
. Существует команда emacs Emacs
, к которой вы можете пройти -NW
.
Чтобы хранить команды, вы обычно используете функции :
foo() emacs -nw "$@"
foo ...
для хранения нескольких аргументов, вы обычно используете массивы:
foo=(emacs -nw)
$foo ...
для хранения строки, содержащей несколько слов, разделенных пробелами, и оно разделено на пробелы , вы можете сделать:
foo='emacs -nw'
${(s: :)foo} ...
Вы можете полагаться на расщепление слова, выполненные на IFS (IFS содержит место, вкладка, новая линия и нуль по умолчанию):
foo='emacs -nw'
$=foo ...
Для будущих читателей следует отметить, что «стандартный» способ выполнения такой вещи - это EVALE
UATE аргументы, хранящиеся в переменной:
eval "$foo"
, можно также оценить Выражение с заменой команды:
$(expr "$foo")
ECHO
вариабельная (или иным образом напечатана) работает:
$(echo "$foo")
Эти методы работают как минимум, по крайней мере, в ZSH
и Bash
.