Bash поиск и запуск предыдущей команды

Bash поиск и запуск предыдущей команды

В соответствии сСправочник O'Reily's Bash Pocket (стр. 40)следующая команда выполнит последнюю команду, содержащую string:

!?string[?]

Я запускаю эту команду, но всегда получаю ответ:

bash: !?string[?: event not found

Как я могу это сделать?

решение1

Из руководства Bash:

!?string[?]
     Refer to the most recent command preceding the current position
     in the history list containing string.  The trailing ? may be
     omitted if string is followed immediately by a newline.

Означает [?], что завершающий элемент ?необязателен. Вы найдете это соглашение, используемое в большинстве разделов синопсиса в онлайн-руководствах, например

NAME
     ls – list directory contents

SYNOPSIS
     ls [-1AaCcdFfgHhikLlmnopqRrSsTtux] [file ...]

Связанный контент