- HowTo: Clear BASH History
- Clear Bash history completely
- Remove a certain line from Bash history
- Clear current session history
- Don’t save command in Bash history
- Don’t save commands in Bash history for current session
- How To Clear Shell History In Ubuntu Linux
- How to clear bash shell history command
- Finding info about your history
- Command to clear Ubuntu bash history
- Prevent a bash history file from ever being saved
- A list of history shell variables
- История команд Linux
- История команд Linux
- Настройка истории Linux
- Выводы
- How to Clear BASH Command Line History in Linux
- If You Appreciate What We Do Here On TecMint, You Should Consider:
HowTo: Clear BASH History
Sometimes you don’t want to leave Bash history, because it may contain some sensitive data like passwords.
This article may help you to control your Bash history file.
Clear Bash history completely
Type the following command to clear all your Bash history:
Option | Description |
---|---|
-c | Clear the history list |
-w | Write out the current history to the history file |
Remove a certain line from Bash history
Type the following command to remove a certain line (e.g. 352) from the Bash history file:
Option | Description |
---|---|
-d | Delete specified line from the history |
Clear current session history
Type the following command to clear the Bash history of the current session only:
Option | Description |
---|---|
-r | Read the current history file and append its contents to the history list |
Don’t save command in Bash history
Execute a command without saving it in the Bash history:
Put a space in front of your command and it won’t be saved in the Bash history.
Don’t save commands in Bash history for current session
Unsetting HISTFILE will cause any commands that you have executed in the current shell session not to be written in your bash_history file upon logout:
Источник
How To Clear Shell History In Ubuntu Linux
H ow do I clear the shell history in Ubuntu Linux? How can I clear terminal command history in Ubuntu Linux? How do I clear bash history completely on Ubuntu Linux?
Command history allows you to find and reissue previously typed commands. History expansions introduce words from the history list into the input stream, making it easy to repeat commands, insert the arguments to a previous command into the currentinput line, or fix errors in previous commands quickly. You may pass sensitive information such as passwords and it is stored in shell history file. Use the following tips to either delete your history or disable it.
Tutorial details | |
---|---|
Difficulty level | Easy |
Root privileges | No |
Requirements | None |
Est. reading time | 1m |
How to clear bash shell history command
The procedure to delete terminal command history are as follows on Ubuntu:
- Open the terminal application
- Type the following command to to clear bash history completely:
history -c - Another option to remove terminal history in Ubuntu:
unset HISTFILE - Log out and login again to test changes
Let us see all examples and usage in details to remove shell history in Ubuntu when using bash.
Finding info about your history
To get name of the history file, type:
echo «$HISTFILE»
/home/vivek/.bash_history
So my history is stored in /home/vivek/.bash_history file. It can store up to 1000 commands by default. To see your current settings run the following echo command echo «$HISTSIZE»
1000
To see current history, run:
history
history | grep ‘du’
The grep command used in last to filter out history.
Command to clear Ubuntu bash history
To clear the history, type the following command:
history -c
OR
rm
/.bash_history
You can add the command to your
/.bash_logout so that history will get cleared when you logout:
echo ‘history -c’ >>
- No ads and tracking
- In-depth guides for developers and sysadmins at Opensourceflare✨
- Join my Patreon to support independent content creators and start reading latest guides:
- How to set up Redis sentinel cluster on Ubuntu or Debian Linux
- How To Set Up SSH Keys With YubiKey as two-factor authentication (U2F/FIDO2)
- How to set up Mariadb Galera cluster on Ubuntu or Debian Linux
- A podman tutorial for beginners – part I (run Linux containers without Docker and in daemonless mode)
- How to protect Linux against rogue USB devices using USBGuard
Join Patreon ➔
Prevent a bash history file from ever being saved
Add the following commands to
/.bashrc file:
echo ‘unset HISTFILE’ >>
/.bashrc
echo ‘export LESSHISTFILE=»-«‘ >>
A list of history shell variables
Bash shell variable | Description/Usage |
---|---|
HISTFILE echo $HISTFILE export HISTFILE= |
/.my_shell_history
export HISTFILESIZE=50000
export HISTSIZE=50000
export HISTTIMEFORMAT=»%d/%m/%y %T «
# Ignore these commands
HISTIGNORE=»ls:pwd»
#Dont put duplicate lines in the history
export HISTCONTROL=ignoreboth
For more info read bash command man page online or offline by typing the following command:
man bash
help history
See “A Shell Primer: Master Your Linux, OS X, Unix Shell Environment” for more info.
🐧 Get the latest tutorials on Linux, Open Source & DevOps via
Источник
История команд Linux
В терминале Linux, кроме всего прочего, есть одна замечательная вещь. Это история команд Linux. Все команды, которые вы вводите во время работы сохраняются и вы можете найти и посмотреть их в любой момент. Также можете вернуться на несколько команд чтобы не набирать недавно выполненную команду заново.
В этой небольшой статье мы рассмотрим как пользоваться историей команд Linux, как ее настроить, а также рассмотрим полезные приемы, которые могут помочь вам в работе.
История команд Linux
Большинство задач, связанных с историей команд, мы будем выполнять либо с помощью команды history, либо с помощью оболочки. В истории хранится последняя 1000 команд, которые вы выполняли. Чтобы посмотреть всю историю для этого терминала просто запустите команду history без параметров:
Для дополнительных действий с историей вам могут понадобиться опции. Команда history linux имеет очень простой синтаксис:
$ history опции файл
В качестве файла можно указать файл истории. По умолчанию история для текущего пользователя хранится в файле
/.history, но вы можете задать, например, файл другого пользователя. А теперь рассмотрим опции:
- -c — очистить историю;
- -d — удалить определенную строку из истории;
- -a — добавить новую команду в историю;
- -n — скопировать команды из файла истории в текущий список;
- -w — перезаписать содержимое одного файла истории в другой, заменяя повторяющиеся вхождения.
Наиболее полезной для нас из всего этого будет опция -c, которая позволяет очистить историю команд linux:
Так вы можете посмотреть только последние 10 команд:
А с помощью опции -d удалить ненужное, например, удалить команду под номером 1007:
Если вы хотите выполнить поиск по истории bash, можно использовать фильтр grep. Например, найдем все команды zypper:
history | grep zypper
На самом деле работать с историей еще более просто с помощью оболочки, возможно, вы уже используете многие ее функции, но о некоторых точно не знаете. Рассмотрим их:
Чтобы показать предыдущую команду просто нажмите стрелку вверх, так можно просмотреть список раньше выполненных команд.
Вы можете выполнить последнюю команду просто набрав «!!». Также можно выполнить одну из предыдущих команд указав ее номер «!-2»
Чтобы выполнить поиск по истории прямо во время ввода нажмите Ctrl+R и начните вводить начало команды.
Если вы знаете, что нужная команда была последней, которая начиналась на определенные символы, например, l, то вы можете ее выполнить, дописав «!l»:
Если нужная команда последняя содержала определенное слово, например, tmp, то вы можете ее найти, использовав «!?tmp»:
Если вы не хотите, чтобы выполняемая команда сохранилась в истории просто поставьте перед ней пробел.
Таким образом, вы можете очень быстро отыскать нужную команду, если помните как она была написана. История команд bash хранит очень много команд и этого вполне достаточно для комфортной работы.
Настройка истории Linux
Linux — очень настраиваемая и гибкая система, поэтому настроить здесь можно все, в том числе и историю. По умолчанию выводится только номер команды, но вы можете выводить и ее дату. Для этого нужно экспортировать переменную HISTORYFORMAT вместе нужным форматом:
export HISTTIMEFORMAT=’%F %T ‘
$ history
Для форматирования можно использовать такие модификаторы:
- %d – день;
- %m – месяц;
- %y – год;
- %T – штамп времени;
- %F — штамп даты.
Вы можете указать какие команды не стоит отображать, например, не будем выводить ls -l, pwd и date:
export HISTIGNORE=’ls -l:pwd:date:’
Также можно отключить вывод одинаковых команд:
Существует два флага, ignoredups и ignorespace. Второй указывает, что нужно игнорировать команды, начинающиеся с пробела. Если вы хотите установить оба значения, используйте флаг ignoreboth. Используйте переменную HISTSIZE, чтобы установить размер истории:
По умолчанию история сохраняется для каждого терминала отдельно. Но если вы хотите чтобы все ваши команды немедленно синхронизировались между всеми терминалами, то это очень просто настроить. Добавьте такую переменную:
export PROMPT_COMMAND=»$
Для тестирования работы вы можете набирать эти команды прямо в терминале и сразу видеть результат, но для сохранения добавьте нужные строки в ваш
export PROMPT_COMMAND=»$
$ export HISTCONTROL=ignoredups
$ export HISTTIMEFORMAT=’%F %T ‘
Готово, теперь осталось сохранить изменения и перезапустить ваши терминалы. Теперь ваша история будет выводить дату, игнорировать дубли и синхронизироваться между терминалами.
Выводы
В этой статье мы рассмотрели что такое история команд linux, как с ней работать, как применяется команда history linux и какие настройки можно использовать для более комфортной работы. Если у вас остались вопросы, спрашивайте в комментариях!
Источник
How to Clear BASH Command Line History in Linux
The bash history keeps a record of all commands executed by a user on the Linux command line. This allows you to easily run previously executed commands by using the “up arrow” or “down arrow” keys to scroll through the command history file.
In this article, we will show you two simple ways to clear your command-line history on a Linux system.
The major reason for removing command-line history from the Linux terminal is to prevent another user, who could be using the same account.
For instance if you have typed a command that contained a password in plain-text and you don’t want another system user or an attacker to see this password, you need to delete or clear the history file.
Take a look at the command below, here the user aaronkilik has typed the database server password on the command line.
If you look into th bash history file towards the end, you will see the password typed above in there.
Check Last Executed Commands
The bash_history file is normally located in a user’s home directory /home/username/.bash_history.
To remove a single line from the history file, use the -d option. For example, if you want to clear a command where you entered clear-text password as in the scenario above, find the line number in the history file and run this command.
To delete or clear all the entries from bash history, use the history command below with the -c option.
Alternatively, you can use the command below to delete history of all last executed commands permanently in the file.
Note: A normal user can only view his/her own command history, but the root user can view the command history of all other users on the system.
You can learn more about the bash history file and useful history commands here: The Power of Linux “History Command” in Bash Shell.
Always remember that all commands you run are recorded in a history file, so do not type plain-text passwords on the command line. If you have questions or thoughts to share with us, make use of the feedback form below.
If You Appreciate What We Do Here On TecMint, You Should Consider:
TecMint is the fastest growing and most trusted community site for any kind of Linux Articles, Guides and Books on the web. Millions of people visit TecMint! to search or browse the thousands of published articles available FREELY to all.
If you like what you are reading, please consider buying us a coffee ( or 2 ) as a token of appreciation.
We are thankful for your never ending support.
Источник