Как определить псевдоним, содержащий здесь документ - PullRequest
0 голосов
/ 16 мая 2018

У меня есть команда, которую я могу выполнить следующим образом:

$ cmd<<EOF|gvim -

Попытка псевдонима команды как таковой в моем файле .alias:

alias cmd='cmd<<EOF|gvim -'

Когда я получаю файл псевдонима, я получаю:

$ . ./.alias
bash: ./.alias: line 14: unexpected EOF while looking for matching `''
bash: ./.alias: line 15: syntax error: unexpected end of file

Как я могу определить правильный псевдоним? Благодаря.

1 Ответ

0 голосов
/ 16 мая 2018

Если ваша командная строка начинается с cmd<<EOF|gvim -, это означает, что вам нужно завершить документ здесь (который, как я предполагаю, вы вводите вручную) с EOF. Вместо этого просто позвольте cmd читать со стандартного ввода, который можно завершить с помощью Control - d .

То есть вместо

$ cmd<<EOF | gvim -
> your text
> goes here
> EOF

вы используете

$ cmd | gvim -
your text
goes here
^d

, где ^d - это просто Control - d .

Затем вы можете определить функцию

mycmd () {
    cmd | gvim -
}

Как правило, избегайте определения псевдонимов, которые делают что-то большее, чем просто добавление параметров к одной команде, например, alias ls='ls --color'.

...