History очистить историю linux

Содержание
  1. Команда History в Linux (История Bash)
  2. Использование команды history и расширений истории
  3. Сохранение списка истории
  4. История очистки
  5. Изменение поведения в истории
  6. Выводы
  7. Команда History в Linux (Bash History)
  8. History Command in Linux (Bash History)
  9. В этой статье мы поговорим о history команде, которая позволяет просматривать список ранее выполненных команд, осуществлять поиск по списку и манипулировать файлом истории.
  10. Использование history команд и расширений истории
  11. Сохранение списка истории
  12. Очистка истории
  13. Изменение истории поведения
  14. Вывод
  15. Скрытность в Linux. Заметаем следы
  16. Узнать Временные Метки Файла
  17. Разница Между Временами «Доступа», «Модификации» и «Изменения»
  18. Изменение Времени «Доступа» и «Модификации» Файла
  19. Подделка Времени «Изменения» Файла
  20. Заметаем Следы 😉
  21. Очистить или Удалить Историю Входов в Linux
  22. Удаление Информации о Последних Подключениях
  23. Очистить Историю Команд в BASH
  24. Полностью удалить историю Bash
  25. Удалить определенную строку из истории Bash
  26. Очистить историю команд текущей сессии
  27. Не сохранять команду в истории Bash
  28. Не сохранять все команды текущей сессии в истории Bash
  29. Изменение Прав Доступа к Файлам и Папка в Linux — Основы Chmod
  30. Синтаксис
  31. Классы доступа
  32. Операторы
  33. Права доступа
  34. Числовые права доступа
  35. 10 Простых Примеров :
  36. Запуск Команд на Удаленном Linux Сервере через SSH
  37. Выполнение Команд на Удаленном Linux Сервере
  38. Узнать uptime удаленного сервера
  39. Перезагрузить удаленный сервер
  40. Запуск Нескольких Команд через SSH
  41. Узнать Uptime и Disk Usage
  42. Узнать Memory Usage и Load Average
  43. Показать Версию Ядра, информацию о CPU и кол-во RAM
  44. Выполнение Локального Скрипта на Удаленном Linux Сервере
  45. Запустить Локальный Скрипт ‘local_script.sh’ на Удаленной Машине
  46. 7 Советов — Настройка Истории Команд в Bash
  47. 1. Добавляем Отображение Даты и Времени в Bash History
  48. 2. Увеличиваем Размер Хранимой Истории
  49. 3. Добавляем Команды Bash в Файл с Историей
  50. 4. Мгновенно Сохранять Историю Команд
  51. 5. Контролируйте Bash History
  52. 6. Игнорировать Определенные Команды
  53. 7. Одна Команда — Одна Запись в Истории
  54. Изменить Имя Файла с Историй Команд

Команда History в Linux (История Bash)

Если вы проводите много времени в командной строке, просмотр истории команд, которые вы ранее запускали, может быть полезной функцией, которая может упростить вашу повседневную работу и повысить вашу производительность.

В этой статье мы поговорим о команде history , которая позволяет просматривать список ранее выполненных команд, выполнять поиск по списку и управлять файлом истории.

Использование команды history и расширений истории

history — это встроенная оболочка, и ее поведение может немного отличаться от оболочки к оболочке. Мы рассмотрим встроенную в Bash версию history .

В простейшей форме при вызове без какой-либо опции или аргумента команда history отображает весь список истории с номерами строк.

При вводе !n выполняется n-я команда из списка истории, а !-n команда возвращается на n строк. В следующем примере мы выполняем команду в строке 467 :

Другой способ выполнить команду — использовать расширение !word . word относится к самой последней команде, начинающейся с слова.

Обычно в history отображается много строк вывода, которые не помещаются на экране. Чтобы просмотреть вывод по одной странице за раз, направьте его в программу пейджера, например, команду more или less :

Чтобы отобразить последние n строк, передайте число в качестве аргумента команды. Например, чтобы просмотреть только последние пять строк из списка истории, введите:

Используйте клавиши со стрелками up и down для перемещения по записям в списке. Когда отобразится искомая команда, нажмите Enter чтобы выполнить ее.

Типа !! для выполнения предыдущей команды:

Это особенно полезно, когда вы забываете привязать команду к sudo и вместо повторного ввода команды можете ввести:

!-1 совпадает с !! и выполняет последнюю команду из списка истории !-2 секунды до последней и так далее.

^word1^word2^ позволяет повторно запустить последнюю команду, заменив «word1» на «word2». Если вы случайно набрали sduo command вместо команды sudo command вы можете повторить команду, используя правильное слово:

Используйте команду grep для фильтрации вывода. Например, чтобы просмотреть все команды, включая «nano», вы должны выполнить:

Теперь, если вы хотите повторно запустить команду nano setup.py просто введите:

Другой способ поиска в истории команд — нажать Ctrl-R . Приглашение изменится на следующее, и вы сможете начать поиск ранее выполненной команды.

Оболочка отобразит соответствующую строку. Чтобы перейти к следующему подходящему предложению, снова нажмите Ctrl-R .

Обратитесь к руководству Bash для получения дополнительной информации о расширении истории , модификаторах и позиционных обозначениях.

Сохранение списка истории

По умолчанию при запуске нового сеанса Bash читает список истории из файла .bash_history . Список команд, которые выполняются в текущем сеансе, хранятся в памяти и сохраняются в файле при закрытии сеанса.

Если вы открыли несколько сеансов оболочки, сохраняется только история сеанса, который был закрыт последним.

Параметр -a позволяет сохранить список истории текущего сеанса в файл .bash_history :

Параметр -w записывает полный список истории в файл истории.

История очистки

Команда history позволяет очистить полный список истории или удалить определенные части.

Чтобы очистить список истории, используйте параметр -c :

Чтобы удалить определенную строку или строки между начальной и конечной позициями из списка истории, используйте параметр -d .

Например, чтобы удалить строки между 365 и 375 (включая эти строки), вы должны ввести:

Если вы укажете только одно число для опции -d , команда удалит данную строку.

Когда используется отрицательное целое число, строки отсчитываются от конца списка истории.

Приведенные выше команды очищают список истории, который хранится в памяти, но не удаляют записи из файла .bash_history на диске. Чтобы очистить файл, вам нужно записать в файл список истории:

Изменение поведения в истории

Поведение истории Bash можно определить с помощью нескольких различных переменных среды . При изменении поведения истории установите переменные в

Читайте также:  Вайбер клиент для windows 10

/.bashrc или любом другом файле конфигурации, который загружается при входе пользователя в систему.

По умолчанию Bash сохраняет 500 строк в списке истории команд. Переменная HISTSIZE позволяет вам изменять это значение. Чтобы установить значение 10000, добавьте в файл .bashrc следующую строку:

Переменная HISTCONTROL принимает список значений, разделенных двоеточиями, которые определяют способ сохранения команд в списке истории:

  • ignorespace — команды, начинающиеся с пробела, не сохраняются в списке истории.
  • ignoredups — повторяющиеся команды не сохраняются.
  • ignoreboth — это сокращение, включая как ignorespace и ignoredups .

Когда HISTTIMEFORMAT переменная HISTTIMEFORMAT , Bash HISTTIMEFORMAT времени выполнения команды в каждой строке.

Например, если вы установите:

История будет отображаться в следующем формате:

Выводы

Команда history отображает список ранее выполненных команд. Например, вы можете использовать историю, чтобы просмотреть длинную команду, которую вы использовали раньше, но не можете вспомнить.

Если у вас есть какие-либо вопросы или отзывы, не стесняйтесь оставлять комментарии.

Источник

Команда History в Linux (Bash History)

History Command in Linux (Bash History)

В этой статье мы поговорим о history команде, которая позволяет просматривать список ранее выполненных команд, осуществлять поиск по списку и манипулировать файлом истории.

Если вы проводите много времени в командной строке, просмотр истории команд, которые вы ранее выполняли, может быть полезной функцией, которая может упростить вашу повседневную работу и повысить производительность.

Использование history команд и расширений истории

history является встроенной оболочкой, и ее поведение может немного отличаться от оболочки к оболочке. Мы рассмотрим встроенную версию Bash history .

В простейшей форме, когда вызывается без каких-либо параметров или аргументов, history команда отображает весь список истории с номерами строк.

При наборе !n выполняется n-я команда из списка истории, а !-n команда n строк назад. В следующем примере мы выполняем команду на линии 467 :

Другой способ выполнить команду — использовать !word расширение. word относится к самой последней команде, начинающейся со слова.

Как правило, history отображает много строк вывода, которые не помещаются на экране. Чтобы просмотреть выходные данные по одной странице за раз, передайте их в пейджерную программу, например, more или less команду:

Чтобы отобразить последние n строки, передайте число в качестве аргумента команде. Например, чтобы просмотреть только последние пять строк из списка истории, введите:

Используйте клавиши со стрелками up и down для навигации по записям в списке. Когда появится команда, которую вы искали, нажмите, Enter чтобы выполнить ее.

Введите !! для выполнения предыдущей команды:

Это особенно полезно, когда вы забыли добавить команду sudo , и вместо повторного ввода команды вы можете набрать:

!-1 то же самое, что !! и выполняет последнюю команду из списка истории, от !-2 второй до последней и т. д.

^word1^word2^ Расширение позволяет повторно запустить последнюю команду, заменив «word1» на «word2». Если вы случайно набрали sduo command вместо sudo command вас, вы можете повторить команду, используя правильное слово с:

Используйте grep команду для фильтрации вывода. Например, чтобы просмотреть все команды, включая «nano», вы должны выполнить:

Теперь, если вы хотите перезапустить nano setup.py команду, просто наберите:

Другой способ поиска по истории команд — нажать Ctrl-R . Приглашение изменится на следующее, и вы сможете начать поиск ранее выполненной команды.

Оболочка отобразит соответствующую строку. Чтобы перейти к следующему согласованному предложению, нажмите еще Ctrl-R раз.

Обратитесь к руководству Bash для получения дополнительной информации о расширении истории , модификаторах и обозначениях.

Сохранение списка истории

По умолчанию при запуске нового сеанса Bash читает список истории из .bash_history файла. Список команд, которые выполняются в текущем сеансе, сохраняется в памяти и сохраняется в файл при закрытии сеанса.

Если вы открыли несколько сеансов оболочки, сохраняется только история сеанса, который был закрыт последним.

-a Опция позволяет сохранить текущий список истории сеанса в .bash_history файл:

-w Вариант записывает полный список истории в файл истории.

Очистка истории

Команда history позволяет очистить полный список истории или удалить определенные части.

Чтобы очистить список истории, используйте -c параметр:

Чтобы удалить определенную строку или строки между начальной и конечной позициями из списка истории, используйте -d параметр.

Например, чтобы удалить строки между 365 и 375 (включая эти строки), введите:

Если вы указываете только один номер -d опции, команда удаляет данную строку.

Когда используется отрицательное целое число, строки отсчитываются от конца списка истории.

Приведенные выше команды очищают список истории, который хранится в памяти, но не удаляет записи из .bash_history файла на диске. Чтобы очистить файл, вам нужно записать в файл список истории:

Изменение истории поведения

Поведение истории Bash может быть определено с использованием нескольких различных переменных среды . При изменении поведения истории установите переменные в

/.bashrc любом другом файле конфигурации, который загружается при входе пользователя в систему.

По умолчанию Bash хранит 500 строк в списке истории команд. HISTSIZE Переменная позволяет изменять это значение. Чтобы установить его на 10000, добавьте следующую строку в ваш .bashrc файл:

HISTCONTROL Переменная принимает разделенный двоеточиями список значений , которые определяют , каким образом команды сохраняются в списке истории:

  • ignorespace — команды, начинающиеся с пробела, не сохраняются в списке истории.
  • ignoredups — дубликаты команд не сохраняются.
  • ignoreboth — это стенография, включающая в себя ignorespace и ignoredups .

Когда HISTTIMEFORMAT переменная установлена, Bash добавляет метку времени выполнения команды в каждой строке.

Например, если вы установите:

История будет отображаться в следующем формате:

Вывод

Команда history отображает список ранее выполненных команд. Например, вы можете использовать историю, чтобы просмотреть длинную команду, которую вы использовали до того, что вы не можете вспомнить.

Источник

Скрытность в Linux. Заметаем следы

Файлы в Linux имеют 3 типа временных меток: время доступа (англ. access time, сокр. atime), время модификации (англ. modification time, сокр. mtime) и время изменения (англ. change time, сокр. ctime).

Однажды может возникнуть необходимость подделать временные меткикакого-либо файла.

Время доступа (atime), как и время модификации (mtime) могут быть легко изменены с помощью команды touch, но для подделки метки времени изменения (ctime) стандартного решения не существует.

Тем не менее, в качестве обходного пути, можно установить системное время в то значение на которое вы хотите изменить ctime файла, затем использовать команду touch на этом файле и потом откатить системное время обратно.

Из приведенной ниже статьи вы узнаете, как сохраняя анонимность изменять временные метки файла.

Узнать Временные Метки Файла

Чтобы получить информацию о текущий временных метках файла воспользуетесь командой stat :

Разница Между Временами «Доступа», «Модификации» и «Изменения»

Временная метка Когда она обновляется?
atime Время доступа к файлу обновляется когда вы открываете файл либо когда он используется для других операций, например таких как: grep, cat, head и т.д.
mtime Время модификации файла обновляется когда вы изменяете его содержимое либо сохраняете файл.
ctime Время изменения файла обновляется когда меняются его атрибуты, такие как владелец файла, права, либо он перемещается на другую файловую систему. Также это время обновляется и при изменения времени модификации файла.

Изменение Времени «Доступа» и «Модификации» Файла

Изменить время доступа к файлу (atime) :

Изменить время модификации файла (ctime) :

Подделка Времени «Изменения» Файла

Как я уже говори ранее, не существует стандартного решения для подделки времени изменения файла (ctime).

Тем не менее, это можно сделать если сначала поменять системное время на то, на которое вы хотите поменять ctime, затем использовать команду touch на файле и потом откатить системное время обратно.

Изменение системного времени может привести к неожиданным последствиям. Используйте приведенные ниже команды только на свой страх и риск.

Сохраните текущую дату и время в переменную NOW :

Установите поддельное системное время (необходим root) :

Используйте команду touch на файле для изменения всех временных меток на поддельные :

Откатите время назад (необходим root) :

Для увеличения скорости выполнения модификаций и как следствие уменьшения риска возможных последствий, вы можете выполнит приведенные выше команды следующим образом :

Заметаем Следы 😉

Чтобы замести следы не забудьте очистить значение переменной, а также почистить логи и историю.
Очистите значение переменной NOW :

Из файла /var/log/messages удалите строки с информацией об изменении системного времени (необходим root) :

Очистите историю входов в Linux (необходим root) :

Очистите историю текущей сессии :

Очистить или Удалить Историю Входов в Linux

В Linux системах есть три стандартные команды, которые показывают информацию о последних подключавшихся пользователях : last, lastb, и lastlog.

Вывод этих команд включает : логин, время последнего подключения, IP адрес, порт и т.д.

И иногда, чтобы сохранить анонимность, возникает необходимость очистить историю последних подключений.

Команда Журнал логов Описание
last /var/log/wtmp История успешных входов/выходов
lastb /var/log/btmp История неудавшихся попыток входа
lastlog /var/log/lastlog Список последних подключавшихся пользователей

Удаление Информации о Последних Подключениях

Для удаления всей информации о последних подключавшихся пользователях необходимо очистить журналы с логами :

Очистить Историю Команд в BASH

Полностью удалить историю Bash

Выполните следующую команду для полного удаления всей истории Bash :

Опции Описание
-c Очистить файл истории
-w Внести команды текущей сессии в файл с историей

Удалить определенную строку из истории Bash

Опция Описание
-d Удалить строку с указанным номером из истории

Очистить историю команд текущей сессии

Выполните для удаления истории команд только текущей сессии :

Опция Описание
-r Прочитать файл с текущие историей и добавить его содержимое к списку истории команд

Не сохранять команду в истории Bash

Выполнить команду не занося ее в историю Bash :
$ команда
Поставьте пробел перед любой командой и она не будет сохранена в истории Bash.

Не сохранять все команды текущей сессии в истории Bash

Отключение HISTFILE приводит к тому, что пока Вы не выйдите из текущей сессии, любые команды которые Вы будете выполнять не будут сохраняться в файле с историей bash_history :

Изменение Прав Доступа к Файлам и Папка в Linux — Основы Chmod

Команда сhmod (change mode) служит для изменения прав доступа к файлам и папкам.

Синтаксис

Команды chmod имеет следующий синтаксис :

  • -R, —recursive; изменять файлы и директории рекурсивно
  • -f, —silent, —quiet; не выводить сообщения об ошибках

Показать текущие права на файл / директорию можно с помощью команды ls :

или используя команду stat :

Классы доступа

Классы доступа используются для того, чтобы определить какому пользователю назначаются права. Если класс доступа не указан, то по умолчанию используется класс “all”. Классы доступа представлены одной или несколькими из ниже перечисленных букв :

Класс Class Описание
u user владелец файла (папки)
g group пользователи, которые являются членами группы к которой принадлежит файл (папка)
o others пользователи, которые не являются ни владельцем файла (папки), ни входят в группу файла (папки)
a all все три перечисленных выше класса, то же самое что ugo

Операторы

Программа chmod использует оператор для того, чтобы указать каким образом будут применены права доступа к файлам или папкам. Приняты следующие операторы :

Оператор Описание
+ добавить указанные права доступа к указанному классу
убрать указанные права доступа из указанного класса
= присвоить указанные права доступа

Права доступа

Права доступа указывают какие полномочия следует предоставить или забрать у указанного класса. Существуют три основных вида прав доступа, которые соответствуют базовым полномочиям :

Права доступа Name Описание
r read права на чтение содержимого файла или директорию (просматривать файлы и поддиректории в папке)
w write права на запись в файл или директорию (создавать файлы и поддиректории в папке)
x execute права на исполнение файла в качестве программы/скрипта либо права на вход в директорию (просмотр дерева каталога)
X special execute права на вход в директорию и права на исполнение файла, в случае, если хотя бы одному классу уже назначено право на исполнение (для любого из user, group или other)

[X] сам по себе не является правом доступа, но тем не менее, может использоваться вместо x. Он на самом деле полезен только в случае использования оператора ‘+’ в сочетании с опцией -R, для того чтобы предоставить группе или остальным пользователям права доступа к дереву каталога, не давая прав на исполнение обычных файлов (например текстовых), что случится при применении команды ‘chmod -R a+rx’. Таким образом вместо нее можно использовать ‘X’, и соответственно выполнить ‘chmod -R a+rX’.

Числовые права доступа

Возможно использование прав доступа как в символьной, так и в числовой форме.

Числовая форма для прав доступа :

  • Первая цифра используется для обозначения user (пользователь)
  • Вторая цифра используется для обозначения group (группа)
  • Третья цифра используется для обозначения others (остальные)
# Права Описание
7 rwx чтение, запись, исполнение
6 rw- чтение, запись
5 r-x чтение, запись
4 r— чтение
3 -wx запись, исполнение
2 -w- запись
1 —x исполнение
0 нет прав

10 Простых Примеров :

1. Добавить всем права на чтение файла :

2. Забрать права на исполнение файла у всех :

3. Добавить всем права на чтение и запись :

4. Установить права на чтение и запись для владельца и забрать права у всех остальных :

5. Для директории и всего ее содержимого добавить права на запись для владельца, и забрать права на запись для всех остальных :

6. Забрать у всех все права :

7. Дать всем права на права на чтение, запись и выполнение файла :

8. Задать права на чтение и запись без права на исполнение для владельца и группы, а все остальным дать право только на чтение :

9. Назначить права ‘-rwx’ для владельцев директорий, добавить права ‘rw’ для владельцев файлов, ‘—‘ для всех остальных :

10. Забрать у всех права на исполнение файлов в директории и поддиректориях, но в то же время, разрешить всем просматривать содержимое директорий :

Запуск Команд на Удаленном Linux Сервере через SSH

В этой заметке Вы найдете различные примеры того, как выполнять команды на удаленном Linux сервере и получать результат локально.

Данная информация будет очень полезна, если Вы пишете Bash скрипт, который будет запускаться с локальной машины и выполнять какие-либо команды на удаленном сервере.

  • выполнить команду на удаленном Linux сервере;
  • запустить множество команд через SSH;
  • выполнить локальный скрипт на удаленном Linux сервере без его копирования.

Выполнение Команд на Удаленном Linux Сервере

Узнать uptime удаленного сервера

Перезагрузить удаленный сервер

Запуск Нескольких Команд через SSH

СПОСОБ 1 :

Узнать Uptime и Disk Usage

СПОСОБ 2 :

Узнать Memory Usage и Load Average

СПОСОБ 3 :

Показать Версию Ядра, информацию о CPU и кол-во RAM

Выполнение Локального Скрипта на Удаленном Linux Сервере

Запустить Локальный Скрипт ‘local_script.sh’ на Удаленной Машине

7 Советов — Настройка Истории Команд в Bash

Настройка истории команд в Bash осуществляется путем добавления переменных окружения в файл

Чтобы изменения в

/.bashrc вступили в силу, выполните :

1. Добавляем Отображение Даты и Времени в Bash History

Иногда очень полезно узнать время, когда какая-либо команда была выполнена.

Установите HISTTIMEFORMAT, чтобы сохранять время выполнения каждой команды.

Для этого добавьте следующую строку в файл

Теперь, набрав history, Вы получите следующий вывод :

2. Увеличиваем Размер Хранимой Истории

Увеличьте HISTSIZE — количество команд, которые необходимо запоминать в списке истории (стандартное значение — 500).

Увеличьте HISTFILESIZE — максимальное количество строк, содержащееся в файле истории (стандартное значение — 500).

3. Добавляем Команды Bash в Файл с Историей

Bash перезаписывает файл .bash_history?

Чтобы добавлять новые команды в файл с историей, а не переписывать его каждый раз, добавьте следующую строку в

4. Мгновенно Сохранять Историю Команд

По умолчанию, Bash записывает историю команд в .bash_history, при завершении сессии.

Если сессия внезапно оборвется Вы потеряете текущую историю команд.

Используйте переменную $PROMPT_COMMAND, чтобы сохранять команды сразу после выполнения :

Добавьте следующую строку в файл

/.bashrc, если переменная $PROMPT_COMMAND не была задана ранее :

Добавьте следующую строку, если переменная $PROMPT_COMMAND уже была задана :

5. Контролируйте Bash History

HISTCONTROL — представляет из себя список опций, разделенных двоеточиями.

Они контролируют каким образом список команд сохраняется в истории.

Опция Описание
ignorespace не сохранять строки начинающиеся с символа
ignoredups не сохранять строки, совпадающие с последней выполненной командой
ignoreboth использовать обе опции ‘ignorespace’ и ‘ignoredups’
erasedups удалять ВСЕ дубликаты команд с истории

6. Игнорировать Определенные Команды

HISTIGNORE — список шаблонов через двоеточие, используемых для принятия решения о сохранении строк с командами в списке истории.

Не сохранять команды ls, ps и history :

Не сохранять команды начинающиеся с s :

7. Одна Команда — Одна Запись в Истории

Сохранять все строки многострочной команды в одной записи списка истории :

Изменить Имя Файла с Историй Команд

Используйте HISTFILE для изменения имени файла, в котором сохраняется история команд. Стандартное значение

Источник

Читайте также:  Линукс файловая система для ssd
Оцените статью