Инструменты пользователя

Инструменты сайта


nix:start

Различия

Показаны различия между двумя версиями страницы.

Ссылка на это сравнение

Предыдущая версия справа и слеваПредыдущая версия
Следующая версия
Предыдущая версия
nix:start [2023/11/02 16:24] – [Запуск фоновой программы по SSH] sannix:start [2025/02/18 12:27] (текущий) – [tail с подсветкой строк] san
Строка 5: Строка 5:
 <file bash> <file bash>
 fsck -nf / fsck -nf /
 +</file>
 +
 +===== tail с подсветкой строк =====
 +
 +Вывод файла почтового лога с подсветкой строк содержащих слово "sent". I в вонце sed-команды 's/.../.../I' делает поиск независящим от регистра.
 +<file>
 +tail -f /var/log/mail.log | sed --unbuffered -e 's/\(.*sent.*\)/\o033[32m\1\o033[39m/I'
 +</file>
 +
 +То же с помощью awk
 +<file>
 +tail -f /var/log/mail.log | awk '{if ($0 ~ /sent/) print "\033[32m" $0 "\033[39m"; else print $0}'
 +</file>
 +
 +Подсветка только совпадающих слов с помощью sed
 +<file>
 +tail -f /var/log/mail.log | sed --unbuffered -e 's/\(.*\)\(sent\)\(.*\)/\1\o033[32m\2\o033[39m\3/I'
 +</file>
 +
 +Подсветка только совпадающих слов с помощью grep
 +<file>
 +tail -f /var/log/mail.log| grep --color=always -iE 'sent|$'
 +</file>
 +===== Генерация пароля =====
 +
 +<file>
 +openssl rand -base64 15
 +openssl rand -base64 24
 </file> </file>
  
Строка 80: Строка 108:
 <file bash> <file bash>
 ssh login@host 'nohup /path/to/program >/dev/null 2>&1 </dev/null &' ssh login@host 'nohup /path/to/program >/dev/null 2>&1 </dev/null &'
 +</file>
 +
 +===== Выполнение серии команд по SSH =====
 +Делаем переменную с текстом скрипта
 +<file bash>
 +script="
 +if [ Condition_1 ]; then
 +  command1
 + elif [ Condition_2 ]; then
 +  command2
 +  command3
 +fi"
 +</file>
 +И затем
 +<file bash>
 +ssh login@host "$script"
 +</file>
 +или
 +<file bash>
 +ssh login@host 'bash -s' <<< "$script"
 +</file>
 +
 +===== самодельный VPN через SSH =====
 +
 +<file bash server>
 +ssh -L 127.0.0.1:2222:127.0.0.1:2222 server
 +socat -d -d TCP4-LISTEN:2222,reuseaddr TUN:192.168.255.1/24,up
 +iptables -t nat -A POSTROUTING -o tun0 -s 192.168.255.0/24 -j MASQUERADE
 +</file>
 +
 +<file bash client>
 +socat TCP:localhost:2222 TUN:192.168.255.2/24,up
 +ip r add 0.0.0.0/0 via 192.168.255.1 metric 10
 +</file>
 +
 +===== Поиск имен файлов больше 255 символов =====
 +
 +Это может быть полезно при переносе файлов с NTFS/CIFS дисков на диски линукс сервера (где ограничение на длину имен в 256 байт, что для русских букв в UTF-8 будет означать 127 символов)
 +
 +<file>
 +find . -type f -print| while read line; do len=$(basename "$line"|wc -c); if [[ $len -ge 255 ]]; then echo "$line"; fi done
 </file> </file>
  
  
 {{tag>linux unix shell scripts}} {{tag>linux unix shell scripts}}
nix/start.1698931496.txt.gz · Последнее изменение: 2023/11/02 16:24 — san

Если не указано иное, содержимое этой вики предоставляется на условиях следующей лицензии: Public Domain
Public Domain Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki