Как выполнить команду Bash Linux без сохранения ее в истории

По умолчанию каждая команда, которую вы выполняете на терминале, сохраняется оболочкой (командным интерпретатором) в определенном файле, называемом файлом истории или историей команд оболочки. В Bash (наиболее популярной оболочке в Linux-системах) по умолчанию количество команд, сохраняемых в истории, составляет 1000, а в некоторых дистрибутивах Linux - 500.

Чтобы проверить размер истории в Bash, выполните эту команду:

Чтобы увидеть старые команды, которые вы выполняли, вы можете использовать команду history для отображения истории команд оболочки:

Иногда вам может понадобиться запретить оболочке записывать команды в историю команд. Это можно сделать следующим образом.

Удаление команды Linux из истории после выполнения

Вы можете немедленно удалить команду из истории оболочки после ее выполнения в командной строке, добавив к ней команду history -d $(history 1).

Подкоманда $(history 1) извлекает последнюю запись в истории в текущем терминальном сеансе, где 1 - это смещение, а опция -d помогает удалить ее.

Любая команда, выполняемая в обычном режиме, сохраняется в истории оболочки.

Однако, когда вы добавляете команду history -d $(history 1) к командной строке, она сразу же удаляется из истории.

Использование префикса команды с пробелом

Другой способ предотвратить сохранение команды в истории - это префикс команды с пробелом. Но это полностью зависит от значения переменной оболочки $HISTCONTROL, определенной в файле запуска ~/.bashrc Bash. Чтобы этот метод работал, он должен иметь одно из этих значений: ignorespace или ignoreboth.

ИЛИ

Для установки, просто заполняем переменную

~/.bashrc HISTCONTROL

Если вышеупомянутая переменная оболочки установлена, то любая команда с пробелом не сохраняется в истории:

bash history

Понравилась статья? Поделиться с друзьями:
Добавить комментарий