Как да стартирате Linux команда, без да я записвате в историята

Сподели

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

За да проверите вашите история размер в Bash, изпълнете тази команда:

$ echo $HISTSIZE
Проверете размера на историята на Linux
Проверете размера на историята на Linux

За да видите по-стари команди, които сте изпълнили, можете да използвате командата history, за да покажете историята на командите на обвивката:

$ history
Проверете историята на командите в Linux
Проверете историята на командите в Linux

Понякога може да искате да деактивирате обвивката от записване на команди в нейната история на командите. Можете да го направите по следния начин.

Изтрийте Linux команда от историята след изпълнение

Можете да изтриете команда веднага от историята на обвивката, след като я изпълните на командния ред, като добавите history -d $(history 1) команда към него.

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

Всяка изпълнявана команда обикновено се записва в историята на обвивката.

$ echo "This command is saved in history"
$ history | tail
Преглед на историята на командите на Linux
Преглед на историята на командите на Linux

Въпреки това, когато добавите history -d $(history 1) команда към команден ред, тя веднага се изтрива от историята на обвивката, както е показано на следната екранна снимка:

$ echo "This command is not saved in history";history -d $(history 1)
$ history | tail
Изтрийте историята на командите на Linux след изпълнение
Изтрийте историята на командите на Linux след изпълнение

Друг начин да попречите на черупката да запази команда в историята е да префикс командата с интервал. Но това зависи изцяло от стойността на $HISTCONTROL променлива на обвивката, дефинирана в ~/.bashrc Файл за стартиране на Bash. Трябва да бъде настроен да има една от тези стойности: пространство за игнориране или игнорирайте и дветеза да работи този метод.

Можете да проверите стойността на $HISTCONTROL променлива, както е показано.

$ echo $HISTCONTROL
OR
$ cat ~/.bashrc | grep $HISTCONTROL
Проверете HISTCONTROL променлива
Проверете HISTCONTROL променлива

Ако гореспоменатата променлива на обвивката е зададена, тогава всяка команда с префикс с интервал не се записва в историята:

$ echo "This command is not prefixed with space, it will be saved in history!"
$ echo "This command is prefixed with space, it will not be saved in history!"
Не запазвайте Linux командата в историята
Не запазвайте Linux командата в историята

Ето някои други интересни статии за Bash история и история команди:

  • 2 начина за повторно изпълнение на последните изпълнени команди в Linux
  • Как да изчистите историята на командния ред на BASH в Linux
  • Задайте дата и час за всяка команда, която изпълнявате в историята на Bash

Това е за сега! Използвайте формата за коментари по-долу, за да споделите вашите мисли с нас по тази тема. До следващия път, останете с нас.

Публикациите се превеждат автоматично с google translate


Сподели