Как ускорить навигацию командной строки
++++++++++++++++++++++++++++++
Повторный запуск под root — sudo !!
user@host: cat /var/log/messages
cat /var/log/messages: Permission denied.
Как не надо: Вверх. Влево. Влево. Влево. …. sudo Enter. Рррр.
Как надо: sudo !!
++++++++++++++++++++++++++++++
++++++++++++++++++++++++++++++
Повторный ввод последнего аргумента — Alt+
Вы захотели еще раз воспользоваться только что написанным аргументом? Например, созданной директорией?
Как не надо: mkdir MyNewDirectory; cd MyNewDirectory
Как надо:
mkdir MyNewDirectory
cd <Alt+.>
++++++++++++++++++++++++++++++
++++++++++++++++++++++++++++++
Поиск запущенной команды — Ctrl+R
Какую же команду я только что запускал? Вверх. Вверх. Вверх. Вверх. О, вот и она!
Снова и снова вам приходится копаться в истории, ведь вы не знаете более подходящих альтернатив. Но что, если я скажу вам о том, что есть… поиск?
Как не надо: Вверх. Вверх. Вверх. Enter.
Как надо: Ctrl+R
Просто нажмите Ctrl+R и введите первые буквы нужной команды. Если поиск не выдал нужную команду сразу, то нажмите Ctrl+R еще раз. Повторное нажатие используется для прокрутки результатов. Ниже приведен поиск для cat.
(reverse-i-search)cat: sudo cat /var/log/messages
++++++++++++++++++++++++++++++
++++++++++++++++++++++++++++++
Переход в начальную директорию — cd
Вы не на шутку удивитесь, узнав, сколько людей не знают этого способа! cd. Да, так просто. Без лишних аргументов вы сразу попадете в начальную директорию.
++++++++++++++++++++++++++++++
++++++++++++++++++++++++++++++
Возвращение в последнюю директорию — cd -
Иногда простой способ — самый лучший. Допустим, вы были в директории /var/www/foo, а теперь оказались в /etc . Простая команда cd — вернет вас обратно в /var/www/foo .
Как не надо: cd /var/www/foo
Как надо: cd -
++++++++++++++++++++++++++++++
++++++++++++++++++++++++++++++
Контроль работы: передний план, фоновый режим и проч.
Возможно, вам потребуется какое-то время, чтобы привыкнуть, но оно того стоит. Допустим, вы редактируете файл в vim (вы же не будете этого делать в nano, да?!). И вот вам вдруг захотелось что-то найти в директории /var/www/html. Конечно же, вы можете выйти из vim, перейти в нужную директорию, а потом вдруг решить, что неплохо было бы вернуться к редактированию. Есть и другой вариант — перевести vim в фоновый режим и вернуться к нему позже.
Напишите: Ctrl+Z. Эта комбинация переводит все текущие задачи с переднего плана в фоновый режим. Полезно как минимум для: less, cat, man, vim и т.д.
«И куда же отправится моя активная задача?» — спросите вы. Напишите jobs и сами узнаете.
user@host: jobs
[1] Stopped vim
Супер. Теперь можно заняться чем-то другим. А как только вы решите вернуться к задаче, напишите fg. Эта команда возвращает фоновую задачу (vim) на передний план. Обратите внимание, что фоновые процессы приостанавливаются. Поэтому если в файле вы выполняли что-то из разряда tail, то для завершения команды потребуется какое-то время. Если же в фоновом режиме запущено несколько задач, то напишите fg 3 , где 3 — это номер задачи для возобновления. Увидеть список задач можно по команде jobs.
++++++++++++++++++++++++++++++
📲 Мы в Max
👉 @linuxchmod
++++++++++++++++++++++++++++++
Повторный запуск под root — sudo !!
user@host: cat /var/log/messages
cat /var/log/messages: Permission denied.
Как не надо: Вверх. Влево. Влево. Влево. …. sudo Enter. Рррр.
Как надо: sudo !!
++++++++++++++++++++++++++++++
++++++++++++++++++++++++++++++
Повторный ввод последнего аргумента — Alt+
Вы захотели еще раз воспользоваться только что написанным аргументом? Например, созданной директорией?
Как не надо: mkdir MyNewDirectory; cd MyNewDirectory
Как надо:
mkdir MyNewDirectory
cd <Alt+.>
++++++++++++++++++++++++++++++
++++++++++++++++++++++++++++++
Поиск запущенной команды — Ctrl+R
Какую же команду я только что запускал? Вверх. Вверх. Вверх. Вверх. О, вот и она!
Снова и снова вам приходится копаться в истории, ведь вы не знаете более подходящих альтернатив. Но что, если я скажу вам о том, что есть… поиск?
Как не надо: Вверх. Вверх. Вверх. Enter.
Как надо: Ctrl+R
Просто нажмите Ctrl+R и введите первые буквы нужной команды. Если поиск не выдал нужную команду сразу, то нажмите Ctrl+R еще раз. Повторное нажатие используется для прокрутки результатов. Ниже приведен поиск для cat.
(reverse-i-search)cat: sudo cat /var/log/messages
++++++++++++++++++++++++++++++
++++++++++++++++++++++++++++++
Переход в начальную директорию — cd
Вы не на шутку удивитесь, узнав, сколько людей не знают этого способа! cd. Да, так просто. Без лишних аргументов вы сразу попадете в начальную директорию.
++++++++++++++++++++++++++++++
++++++++++++++++++++++++++++++
Возвращение в последнюю директорию — cd -
Иногда простой способ — самый лучший. Допустим, вы были в директории /var/www/foo, а теперь оказались в /etc . Простая команда cd — вернет вас обратно в /var/www/foo .
Как не надо: cd /var/www/foo
Как надо: cd -
++++++++++++++++++++++++++++++
++++++++++++++++++++++++++++++
Контроль работы: передний план, фоновый режим и проч.
Возможно, вам потребуется какое-то время, чтобы привыкнуть, но оно того стоит. Допустим, вы редактируете файл в vim (вы же не будете этого делать в nano, да?!). И вот вам вдруг захотелось что-то найти в директории /var/www/html. Конечно же, вы можете выйти из vim, перейти в нужную директорию, а потом вдруг решить, что неплохо было бы вернуться к редактированию. Есть и другой вариант — перевести vim в фоновый режим и вернуться к нему позже.
Напишите: Ctrl+Z. Эта комбинация переводит все текущие задачи с переднего плана в фоновый режим. Полезно как минимум для: less, cat, man, vim и т.д.
«И куда же отправится моя активная задача?» — спросите вы. Напишите jobs и сами узнаете.
user@host: jobs
[1] Stopped vim
Супер. Теперь можно заняться чем-то другим. А как только вы решите вернуться к задаче, напишите fg. Эта команда возвращает фоновую задачу (vim) на передний план. Обратите внимание, что фоновые процессы приостанавливаются. Поэтому если в файле вы выполняли что-то из разряда tail, то для завершения команды потребуется какое-то время. Если же в фоновом режиме запущено несколько задач, то напишите fg 3 , где 3 — это номер задачи для возобновления. Увидеть список задач можно по команде jobs.
++++++++++++++++++++++++++++++
📲 Мы в Max
👉 @linuxchmod
👍5⚡1🏆1
📌 Шпаргалка по регулярным выражениям
Регулярки способны превратить десятки строк кода в одно компактное выражение. Но запомнить все символы, квантификаторы и модификаторы практически невозможно.
В этой одностраничной шпаргалке собраны:
🔹 классы символов:
🔹 якоря начала и конца строки;
🔹 группы и диапазоны;
🔹 квантификаторы
🔹 lookahead и lookbehind;
🔹 экранирование специальных символов;
🔹 модификаторы поиска;
🔹 конструкции для замены найденного текста.
Полезно держать под рукой при работе с логами, конфигурациями, парсерами, редакторами и командной строкой.
📎 Забирайте PDF и сохраняйте — точно пригодится.
#regex #регулярныевыражения #программирование #разработка #шпаргалка
📲 Мы в Max
👉 @linuxchmod
Регулярки способны превратить десятки строк кода в одно компактное выражение. Но запомнить все символы, квантификаторы и модификаторы практически невозможно.
В этой одностраничной шпаргалке собраны:
🔹 классы символов:
\d, \w, \s;🔹 якоря начала и конца строки;
🔹 группы и диапазоны;
🔹 квантификаторы
*, +, ?, {3,5};🔹 lookahead и lookbehind;
🔹 экранирование специальных символов;
🔹 модификаторы поиска;
🔹 конструкции для замены найденного текста.
Полезно держать под рукой при работе с логами, конфигурациями, парсерами, редакторами и командной строкой.
📎 Забирайте PDF и сохраняйте — точно пригодится.
#regex #регулярныевыражения #программирование #разработка #шпаргалка
📲 Мы в Max
👉 @linuxchmod
🔥1
Media is too big
VIEW IN TELEGRAM
Сравнение SHELLs: BASH vs ZSH vs FISH. Делаем красочный и удобный терминал.
источник
📲 Мы в Max
👉 @linuxchmod
источник
📲 Мы в Max
👉 @linuxchmod
👍2🔥2
Это кстати часть зоны за панелью в российском сегменте МКС
Скрутки все видят? 😀
📲 Мы в Max
👉 @linuxchmod
Скрутки все видят? 😀
📲 Мы в Max
👉 @linuxchmod
😁2
Шпаргалка по работе с сетью в linux
Краткая шпаргалка по работе с сетью в Linux, которая охватывает основные команды для диагностики и управления сетевыми интерфейсами.
1. Информация о сетевых интерфейсах
-
-
-
2. Настройка сетевого интерфейса
-
-
-
3. Маршрутизация
-
-
-
4. DNS
-
-
-
5. Проверка сетевых подключений
-
-
-
6. Прослушивание и управление портами
-
-
-
7. Проверка доступных сетей и соединений
-
-
-
8. Тестирование и диагностика
-
-
-
9. Firewall (iptables)
-
-
-
10. Проброс портов
-
📲 Мы в Max
👉 @linuxchmod
Краткая шпаргалка по работе с сетью в Linux, которая охватывает основные команды для диагностики и управления сетевыми интерфейсами.
1. Информация о сетевых интерфейсах
-
ip a или ip addr — показывает информацию о всех сетевых интерфейсах.-
ifconfig — старый способ просмотра интерфейсов. В современных системах заменён на ip a.-
ip link show — информация о сетевых интерфейсах (без IP адресов).2. Настройка сетевого интерфейса
-
ip link set dev eth0 up/down — включить или отключить сетевой интерфейс (заменить eth0 на нужный интерфейс).-
ip addr add 192.168.1.100/24 dev eth0 — назначить IP-адрес интерфейсу eth0.-
ip addr del 192.168.1.100/24 dev eth0 — удалить IP-адрес с интерфейса.3. Маршрутизация
-
ip route show — показать таблицу маршрутизации.-
ip route add default via 192.168.1.1 — установить шлюз по умолчанию (заменить на нужный IP).-
ip route del default — удалить маршрут по умолчанию.4. DNS
-
cat /etc/resolv.conf — показать используемые DNS-сервера.-
nslookup example.com — получить IP-адрес по доменному имени.-
dig example.com — расширенная диагностика DNS-запросов.5. Проверка сетевых подключений
-
ping 192.168.1.1 — отправить ICMP-запрос к узлу (заменить на нужный IP или домен).-
traceroute example.com — показать маршрут до узла.-
mtr example.com — комбинированная команда ping и traceroute с обновлением в реальном времени.6. Прослушивание и управление портами
-
ss -tuln — показать открытые порты и активные соединения.-
netstat -tuln — устаревшая, но часто используемая команда для тех же целей.-
lsof -i :80 — показать процессы, использующие порт 80.7. Проверка доступных сетей и соединений
-
iwconfig — информация о беспроводных интерфейсах (для Wi-Fi).-
nmcli — управление соединениями через NetworkManager.-
nmtui — текстовый интерфейс для управления сетью через NetworkManager.8. Тестирование и диагностика
-
tcpdump -i eth0 — захват пакетов с интерфейса eth0.-
curl ifconfig.me — получить внешний IP-адрес.-
wget http://example.com/file.zip — скачать файл по HTTP/HTTPS.9. Firewall (iptables)
-
iptables -L — показать правила файрвола.-
iptables -A INPUT -p tcp --dport 22 -j ACCEPT — разрешить доступ по SSH (порт 22).-
iptables -D INPUT -p tcp --dport 22 -j ACCEPT — удалить правило.10. Проброс портов
-
iptables -t nat -A PREROUTING -p tcp --dport 8080 -j REDIRECT --to-port 80 — перенаправить запросы на порт 8080 к порту 80.📲 Мы в Max
👉 @linuxchmod
👍5
Libtree
Утилита, позволяющая получить список разделяемых библиотек (shared libraries) в виде дерева, либо в виде путей до этих библиотек в системе.
1. Скачиваем libtree:
2. Проверяем нужный нам файл:
При необходимости углубиться и получить зависимости для отображаемых библиотек просто добавляем
Отобразить полный путь до файла на сервере можно с помощью опции
По умолчанию, информация о некоторых библиотеках не выводится в libtree. Подробнее об этом в выводе команды:
https://github.com/haampie/libtree
📲 Мы в Max
👉 @linuxchmod
Утилита, позволяющая получить список разделяемых библиотек (shared libraries) в виде дерева, либо в виде путей до этих библиотек в системе.
1. Скачиваем libtree:
$ wget https://github.com/haampie/libtree/releases/download/v3.0.1/libtree_x86_64 -O libtree
$ chmod +x libtree
2. Проверяем нужный нам файл:
$ ./libtree /bin/nano
/bin/nano
├── libmagic.so.1 [default path]
│ └── libz.so.1 [default path]
├── libtinfo.so.6 [default path]
└── libncursesw.so.6 [default path]
└── libtinfo.so.6 [default path]
При необходимости углубиться и получить зависимости для отображаемых библиотек просто добавляем
-v, -vv или -vvv соответственно.
$ ./libtree -vvv /bin/nano
/bin/nano
├── libmagic.so.1 [default path]
│ ├── libz.so.1 [default path]
│ │ └── libc.so.6 [default path]
│ │ └── ld-linux-x86-64.so.2 [default path]
│ └── libc.so.6 [default path]
│ └── ld-linux-x86-64.so.2 [default path]
├── libc.so.6 [default path]
│ └── ld-linux-x86-64.so.2 [default path]
├── libtinfo.so.6 [default path]
│ └── libc.so.6 [default path]
│ └── ld-linux-x86-64.so.2 [default path]
└── libncursesw.so.6 [default path]
├── libtinfo.so.6 [default path]
│ └── libc.so.6 [default path]
│ └── ld-linux-x86-64.so.2 [default path]
└── libc.so.6 [default path]
└── ld-linux-x86-64.so.2 [default path]
Отобразить полный путь до файла на сервере можно с помощью опции
-p:
$ ./libtree -p -vvv /bin/ping
/bin/ping
├── /lib64/libcap.so.2 [default path]
│ └── /lib64/libc.so.6 [default path]
│ └── /lib64/ld-linux-x86-64.so.2 [default path]
├── /lib64/libc.so.6 [default path]
│ └── /lib64/ld-linux-x86-64.so.2 [default path]
└── /lib64/libidn2.so.0 [default path]
├── /lib64/libunistring.so.2 [default path]
│ └── /lib64/libc.so.6 [default path]
│ └── /lib64/ld-linux-x86-64.so.2 [default path]
└── /lib64/libc.so.6 [default path]
└── /lib64/ld-linux-x86-64.so.2 [default path]
По умолчанию, информация о некоторых библиотеках не выводится в libtree. Подробнее об этом в выводе команды:
$ ./libtree --help
https://github.com/haampie/libtree
📲 Мы в Max
👉 @linuxchmod
👍4🔥2🥰2
Сохраняем вывода команды Top в файл
Поскольку я не использовал опцию delay, приведенная ниже команда top перенаправит вывод команды top за одну итерацию в файл.
Сохранение вывода команды top с более чем одной итерацией из 5 итераций
Обычно программа работает непрерывно с задержкой в 2 секунды, и вы можете изменить это значение, добавив в верхнюю команду значение ‘-d’, как показано ниже:
Как захватить вывод команды top в файл каждые 5 минут в течение часа
Система создает отдельный файл каждые 5 минут, который поможет вам определить список процессов, которые потребляли больше CPU и памяти в системе.
Добавляем следующий cronjob, который будет выполняться с 5 до 6 утра каждые 5 минут в течение часа.
Где
-n : Задает максимальное количество итераций.
-b : Работа в пакетном режиме (Запуск команды top в пакетном режиме для перенаправления вывода в другие программы или в файл)
-d : Интервал задержки (Задает задержку между обновлениями экрана)
Собраем вывод в один файл, используйте следующий cronjob
Cronjob будет выполняться с 9 до 10 утра каждые 5 минут в течение часа и добавлять результаты в один файл.
Записываем вывод команды top в файл каждые 5 минут в течение получаса
Добавляем следующий cronjob, который будет запускаться каждые 5 минут с 13:30 до 14:00 в течение получаса.
📲 Мы в Max
👉 @linuxchmod
Поскольку я не использовал опцию delay, приведенная ниже команда top перенаправит вывод команды top за одну итерацию в файл.
top -b -n 1 > /home/i_odmin/backup/output.txtСохранение вывода команды top с более чем одной итерацией из 5 итераций
Обычно программа работает непрерывно с задержкой в 2 секунды, и вы можете изменить это значение, добавив в верхнюю команду значение ‘-d’, как показано ниже:
top -n 5 -d 4 -b >/backup/output_1.txtКак захватить вывод команды top в файл каждые 5 минут в течение часа
Система создает отдельный файл каждые 5 минут, который поможет вам определить список процессов, которые потребляли больше CPU и памяти в системе.
Добавляем следующий cronjob, который будет выполняться с 5 до 6 утра каждые 5 минут в течение часа.
Где
-n : Задает максимальное количество итераций.
-b : Работа в пакетном режиме (Запуск команды top в пакетном режиме для перенаправления вывода в другие программы или в файл)
-d : Интервал задержки (Задает задержку между обновлениями экрана)
0-59/5 5 * * * top -n 10 -d 4 -b > /home/i_odmin/backup/top_out-`date +\%Y\%m\%d\%H\%M\%S`.txtСобраем вывод в один файл, используйте следующий cronjob
Cronjob будет выполняться с 9 до 10 утра каждые 5 минут в течение часа и добавлять результаты в один файл.
0-59/5 9 * * * top -b -n5 -d 5 >>/home/i_odmin/backup/output.txtЗаписываем вывод команды top в файл каждые 5 минут в течение получаса
Добавляем следующий cronjob, который будет запускаться каждые 5 минут с 13:30 до 14:00 в течение получаса.
30-59/5 13 * * * top -n 10 -d 4 -b > /home/i_odmin/backup/top_out-`date +\%Y\%m\%d\%H\%M\%S`.txt📲 Мы в Max
👉 @linuxchmod
👍2🔥1