[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: urgent tag и программы в фоне



On Sun, Feb 09, 2014 at 03:52:11PM +0400, yuri.nefedov@gmail.com wrote:
...
> >Только оказалось, что я себе неправильно представлял, что такое $_.
> >Обломался на редактировании первого же файла.  Пришлось сделать так:
> > PROMPT_COMMAND='history |awk "END{if (\$2!=\"gvim\") exit 1}" || echo -ne "\a"'
> >
> >Интересно, а есть ли в bash переменная, где можно узнать последнюю
> >выполненную команду, не дёргая history. Исследуя вывод env, ничего не
> >нашёл.  'echo !!' у меня работает только в интерактивном режиме,
> >почему-то.
> >
>
>  Как я помню, history не работает в скриптах.
>  Вернее неправильно работает.
>  Можно попробовать fc -ln -1 (man bash /fc), но
>  и там history задействован, так что уверенности нет.
>  Мне кажется, что это тупиковый путь.
> Ю.

Вышеуказанная команда с history у меня как раз работает правильно.
(С 'fc -ln -1', кстати, работает тоже, если заменить $2 на $1.)
Насчёт неправильности работы в скриптах, меня тоже долго путало
то, что если набрать в терминале
  history|tail -n1
то именно эта команда и выводится, в то время как при оценке
указанной выше переменной PROMPT_COMMAND в bashrc используется
то что надо, именно последняя введённая, нужная мне команда.


Reply to: