Bash используется в большинстве современных Linux систем поумолчанию и в некоторых других (например, Mac OS x). Использование истории команд позволяет просматривать, изменять и повторно использовать команды, которые вы запускали раньше. Очень помогает при повторном использовании длинных команд.
Как только bash запускается, то файл ~/.bash_history загружается в память. Имя файла установлено в переменной $HISTFILE.
Во время сеанса работы команды добавляются в историю в памяти. При выходе из bash история записывается обратно в файл .bash_history. Количество команда, записываемых в файл истории, находится в переменной $HISTSIZE. Текущее количество команд записано в переменной $HISTFILESIZE.
$ echo $HISTFILE $HISTSIZE $HISTFILESIZE ...
Посмотреть список команд, наберите history. чтобы просмотреть определенное количество команд, нужно запустить с нужным числом:
$ history 5 ...
Для перемещения между предыдущими командами используйте клавиши вврех, вниз. Для редактирования нужной команды используйте стрелку влево, стрелку вправо, Del, Backspace. В качестве альтернативы можно использовать: !! (запустить предыдущую команду), !998 (запустить 998 команду из истории), !998 *doc (добавить *doc в конец команды 998), !?CF? (запустить предыдущую команду содержащую CF), !ls (запустить предыдущую команду ls), !ls:s/CF/l (запустить предыдущую команду при этом заменив CF на l).
Альтернативный способ редактирования команды истории это использование fc команды.
$ fc
Поумолчанию это редактор vi. Можно заменить редактор через переменную FCEDIT или напрямую из командной строки.
$ fc -e /usr/bin/nano 989
Для поиска строки в истории нужно использовать Ctrl+r. При нахождении строки в истории можно нажать Ctrl+r, чтобы найти еще одно предыдущее вхождение найденной строки.
Нажмите здесь, чтобы получить ссылки на статью
Добавлено 23.02.2009 (18:37)
./bash_history хорошая штука, сам одно время им пользовался, только следует учитывать что им можетет воспользоваться не только вы но и злоумышленник, проникнувший в систему, пункт7 здесь http://ukritie.org.ua/index.php?option=com_fireboard&Itemid=38&func=view&catid=11&id=234#233 указывает ./bash_history как одну из угроз безопасности