Bash - командный интерпретатор GNU Bourne

       

ИСТОРИЯ ВЫПОЛНЕНИЯ КОМАНД


При включении опции -o history с помощью встроенной команды , командный интерпретатор обеспечивает доступ к истории выполнения команд - списку ранее введенных команд. Текст последних HISTSIZE команд (по умолчанию - 500) сохраняется в списке истории. Командный интерпретатор сохраняет в списке истории команды до подстановки значений параметров и переменных (см. раздел "" ранее), но после подстановки команд из списка истории, с учетом значений переменных командного интерпретатора HISTIGNORE и HISTCONTROL. При запуске история выполнения команд считывается из файла, имя которого задается переменной HISTFILE (стандартно - ~/.bash_history). Файл HISTFILE при необходимости усекается, чтобы в нем было не более HISTFILESIZE строк. При завершении работы интерактивного командного интерпретатора последние HISTSIZE строк копируются из списка истории выполнения команд в файл HISTFILE. Если установлена опция командного интерпретатора (см. описание команды в разделе "" ниже), строки добавляются к файлу истории, иначе файл истории перезаписывается. Если переменная HISTFILE не установлена или файл истории не доступен на запись, история выполнения команд не сохраняется. После сохранения истории файл усекается до не более чем HISTFILESIZE строк. Если переменная HISTFILESIZE не установлена усечение файла не выполняется.

Встроенная команда (см. раздел "" ниже) может использоваться для выдачи или редактирования и повторного выполнения части списка истории. Встроенная команда позволяет выдавать и изменять список истории выполнения команд, а также управлять файлом истории. При редактировании командной строки во всех режимах редактирования доступны команды поиска по списку истории выполнения команд.

Командный интерпретатор позволяет управлять тем, какие команды сохраняются в списке истории. Переменные HISTCONTROL и HISTIGNORE позволяют ограничить множество сохраняемых команд. Опция командного интерпретатора , при включении, заставляет командный интерпретатор пытаться сохранять все строки многострочной команды в одной записи списка истории, вставляя при необходимости точки с запятой для обеспечения синтаксической корректности. Опция командного интерпретатора заставляет сохранять команды со встроенными переводами встрок вместо вставки точек с запятой. Установка и сброс опций командного интерпретатора рассмотрены ниже в описании встроенной команды в разделе "".



Содержание раздела