Советы по настройке history команд в Bash
Каждая вводимая в терминале команда сохраняется в файле ~/.bash_history. Чтобы посмотреть историю команд – введите history.
Настройка истории команд в Bash осуществляется путем добавления переменных окружения в файл ~/.bashrc.
Чтобы изменения в ~/.bashrc вступили в силу, выполните:
1. Добавляем Отображение Даты и Времени в Bash History
Иногда очень полезно узнать время, когда какая-либо команда была выполнена.
Установите HISTTIMEFORMAT, чтобы сохранять время выполнения каждой команды.
Для этого добавьте следующую строку в файл ~/.bashrc:
export HISTTIMEFORMAT="%h %d %H:%M:%S "
Теперь, набрав history, Вы получите следующий вывод:
2. Увеличиваем Размер Хранимой Истории
Увеличьте HISTSIZE — количество команд, которые необходимо запоминать в списке истории (стандартное значение — 500).
Увеличьте HISTFILESIZE — максимальное количество строк, содержащееся в файле истории (стандартное значение — 500).
3. Добавляем Команды Bash в Файл с Историей
Bash перезаписывает файл .bash_history?
Чтобы добавлять новые команды в файл с историей, а не переписывать его каждый раз, добавьте следующую строку в ~/.bashrc:
4. Мгновенно Сохранять Историю Команд
По умолчанию, Bash записывает историю команд в .bash_history, при завершении сессии.
Если сессия внезапно оборвется Вы потеряете текущую историю команд.
Используйте переменную
Добавьте следующую строку в файл ~/.bashrc, если переменная $PROMPT_COMMAND не была задана ранее:
Добавьте следующую строку, если переменная
👉 @i_linux
Каждая вводимая в терминале команда сохраняется в файле ~/.bash_history. Чтобы посмотреть историю команд – введите history.
Настройка истории команд в Bash осуществляется путем добавления переменных окружения в файл ~/.bashrc.
Чтобы изменения в ~/.bashrc вступили в силу, выполните:
source ~/.bashrc1. Добавляем Отображение Даты и Времени в Bash History
Иногда очень полезно узнать время, когда какая-либо команда была выполнена.
Установите HISTTIMEFORMAT, чтобы сохранять время выполнения каждой команды.
Для этого добавьте следующую строку в файл ~/.bashrc:
export HISTTIMEFORMAT="%h %d %H:%M:%S "
Теперь, набрав history, Вы получите следующий вывод:
113 Jun 08 16:31:06 sudo ifconfig
114 Jun 08 16:31:10 top
115 Jun 08 16:31:19 ping disnetern.ru
116 Jun 08 16:31:22 history2. Увеличиваем Размер Хранимой Истории
Увеличьте HISTSIZE — количество команд, которые необходимо запоминать в списке истории (стандартное значение — 500).
export HISTSIZE=5000Увеличьте HISTFILESIZE — максимальное количество строк, содержащееся в файле истории (стандартное значение — 500).
export HISTFILESIZE=50003. Добавляем Команды Bash в Файл с Историей
Bash перезаписывает файл .bash_history?
Чтобы добавлять новые команды в файл с историей, а не переписывать его каждый раз, добавьте следующую строку в ~/.bashrc:
shopt -s histappend4. Мгновенно Сохранять Историю Команд
По умолчанию, Bash записывает историю команд в .bash_history, при завершении сессии.
Если сессия внезапно оборвется Вы потеряете текущую историю команд.
Используйте переменную
$PROMPT_COMMAND, чтобы сохранять команды сразу после выполнения:Добавьте следующую строку в файл ~/.bashrc, если переменная $PROMPT_COMMAND не была задана ранее:
PROMPT_COMMAND='history -a'Добавьте следующую строку, если переменная
$PROMPT_COMMAND уже была задана:PROMPT_COMMAND='$PROMPT_COMMAND; history -a'👉 @i_linux
👍5
Запуск команд в фоновом режиме
Синтаксис
Задачу (например, команду или скрипт) можно перевести в фоновый режим, добавив символ «&» в конец командной строки. Этот оператор переводит команду в фоновый режим и освобождает место в терминале. Команда, выполняемая в фоновом режиме, называется заданием. Во время работы фоновой команды можно выполнять любые другие команды. Синтаксис выглядит следующим образом:
Чтобы перевести команду ls в фоновый режим, введите:
Чтобы перевести следующую команду поиска в фоновый режим, добавьте символ «&» в конец командной строки:
Как найти задания, работающие в фоновом режиме?
Выполните следующую команду:
Пример вывода данных:
[1] и [2] идентификаторы заданий.
Чтобы отобразить идентификаторы процессов для идентификаторов заданий помимо стандартных сведений, передайте параметр -l:
Пример вывода данных:
Пример вывода данных:
7307
7324
Как прекратить выполнение заданий, работающих в фоновом режиме?
Для принудительного или постепенного завершения процесса следует использовать команду kill. Синтаксис выглядит следующим образом:
Как переместить процесс из фонового режима в приоритетный?
Синтаксис:
ИЛИ
Сначала следует вывести список текущих заданий с помощью команды jobs. Для этого введите:
jobs -l
Пример вывода данных:
Чтобы перевести задание job id #2 в приоритетный режим, введите:
ИЛИ используйте команду:
Пример вывода данных:
Чтобы перевести это задание обратно в фоновый режим, нажмите клавишу Z, удерживая клавишу CTRL. При этом выполнение текущего приоритетного задания будет приостановлено. Введите следующую команду, чтобы перевести задание в фоновый режим:
ИЛИ используйте команду:
Теперь командное задание grep будет работать в фоновом режиме.
👉 @i_linux
Синтаксис
Задачу (например, команду или скрипт) можно перевести в фоновый режим, добавив символ «&» в конец командной строки. Этот оператор переводит команду в фоновый режим и освобождает место в терминале. Команда, выполняемая в фоновом режиме, называется заданием. Во время работы фоновой команды можно выполнять любые другие команды. Синтаксис выглядит следующим образом:
command & noscript-name & /path/to/command arg1 arg2 & command-1 | command-2 arg1 & command-1 | command-2 -arg1 -arg2 >/path/to/output &
ПримерыЧтобы перевести команду ls в фоновый режим, введите:
$ ls *.py > output.txt &Чтобы перевести следующую команду поиска в фоновый режим, добавьте символ «&» в конец командной строки:
find . -iname "*.mp3" > myplaylist.txt &Как найти задания, работающие в фоновом режиме?
Выполните следующую команду:
jobsПример вывода данных:
[1]- Running find / -iname "*.c" 2> /dev/null > /tmp/output.txt &
[2]+ Running grep -R "hostNamed" / 2> /dev/null > /tmp/grep.txt &
Где[1] и [2] идентификаторы заданий.
Чтобы отобразить идентификаторы процессов для идентификаторов заданий помимо стандартных сведений, передайте параметр -l:
jobs –lПример вывода данных:
[1]- 7307 Running find / -iname "*.c" 2> /dev/null > /tmp/output.txt &
[2]+ 7324 Running grep -R "hostNamed" / 2> /dev/null > /tmp/grep.txt &
Чтобы отобразить только идентификаторы процессов, введите:jobs -pПример вывода данных:
7307
7324
Как прекратить выполнение заданий, работающих в фоновом режиме?
Для принудительного или постепенного завершения процесса следует использовать команду kill. Синтаксис выглядит следующим образом:
kill PID
kill -15 PID
kill -9 PID
killall process-Name-Here
killall -15 process-Name-Here
killall -9 process-Name-HereКак переместить процесс из фонового режима в приоритетный?
Синтаксис:
%JOB-IDИЛИ
fg JOB-IDСначала следует вывести список текущих заданий с помощью команды jobs. Для этого введите:
jobs -l
Пример вывода данных:
[1]- 7307 Running find / -iname "*.c" 2> /dev/null > /tmp/output.txt &
[2]+ 7324 Running grep -R "hostNamed" / 2> /dev/null > /tmp/grep.txt &Чтобы перевести задание job id #2 в приоритетный режим, введите:
%2ИЛИ используйте команду:
fg 2Пример вывода данных:
grep -R "hostNamed" / 2> /dev/null > /tmp/grep.txtЧтобы перевести это задание обратно в фоновый режим, нажмите клавишу Z, удерживая клавишу CTRL. При этом выполнение текущего приоритетного задания будет приостановлено. Введите следующую команду, чтобы перевести задание в фоновый режим:
%2 &ИЛИ используйте команду:
bgТеперь командное задание grep будет работать в фоновом режиме.
👉 @i_linux
👍4
This media is not supported in your browser
VIEW IN TELEGRAM
Netdata - это высокоточный мониторинг инфраструктуры и производительности в режиме реального времени.
200+ предварительно созданных интеграций
Интеграция со все большим количеством операционных систем, коллекторов, платформ уведомлений и цепочек инструментов мониторинга/наблюдения.
Если метрика может быть собрана, она будет собрана: с 2 000+ автоопределяемых метрик и 100+ предварительно настроенных предупреждений на каждый узел.
https://github.com/netdata/netdata
👉 @i_linux
200+ предварительно созданных интеграций
Интеграция со все большим количеством операционных систем, коллекторов, платформ уведомлений и цепочек инструментов мониторинга/наблюдения.
Если метрика может быть собрана, она будет собрана: с 2 000+ автоопределяемых метрик и 100+ предварительно настроенных предупреждений на каждый узел.
https://github.com/netdata/netdata
👉 @i_linux
👍5
This media is not supported in your browser
VIEW IN TELEGRAM
aafire Как установить libaa-bin в Ubuntu / Debian
sudo apt update
sudo apt install libaa-binПримеры программ с использованием aalib
http://aa-project.sourceforge.net/aalib/
👉 @i_linux
Please open Telegram to view this post
VIEW IN TELEGRAM
👍4🔥1
👍3
👍3
Объединение файлов командой cat
Команду cat в большинстве случаев используют только для просмотра файлов. На самом деле одно из ее предназначений это конкатенация (объединение) файлов. А название команды происходит от слова catenate (сцепить), то есть присоединение одного после другого.
Под объединением файлов понимается их соединение. Например, если мы имеем два текстовых файла и в одном из них записана строка:
А в другом:
То после объединения мы получим файл с двумя строками:
То есть происходит простое соединение файлов. К содержимому одного добавляется содержимое другого. Это касается не только текстовых файлов, но и всех остальных (бинарных, например).
Чтобы объединить два файла командой cat нужно просто указать в качестве аргументов названия этих файлов и направить результат выполнения в новый файл. Например, мы хотим объединить два файла file1 и file2, а результат записать в новый файл file12. Тогда мы должны выполнить следующую команду:
Вы можете объединить неограниченное количество файлов. Например, чтобы объединить четыре файла и записать результат в файл myfile, выполните команду:
👉 @i_linux
Команду cat в большинстве случаев используют только для просмотра файлов. На самом деле одно из ее предназначений это конкатенация (объединение) файлов. А название команды происходит от слова catenate (сцепить), то есть присоединение одного после другого.
Под объединением файлов понимается их соединение. Например, если мы имеем два текстовых файла и в одном из них записана строка:
My text file 1А в другом:
My text file 2То после объединения мы получим файл с двумя строками:
My text file 1
My text file 2То есть происходит простое соединение файлов. К содержимому одного добавляется содержимое другого. Это касается не только текстовых файлов, но и всех остальных (бинарных, например).
Чтобы объединить два файла командой cat нужно просто указать в качестве аргументов названия этих файлов и направить результат выполнения в новый файл. Например, мы хотим объединить два файла file1 и file2, а результат записать в новый файл file12. Тогда мы должны выполнить следующую команду:
cat file1 file2 > file12Вы можете объединить неограниченное количество файлов. Например, чтобы объединить четыре файла и записать результат в файл myfile, выполните команду:
cat file1 file2 file3 file4 > myfile👉 @i_linux
👍5