Files
santaspeen.ru-blog/docs/misc/bash.md
Artur Akmalov 43a893aa1a add docs
2023-07-20 03:20:17 +05:00

1.7 KiB
Raw Blame History

sidebar_position
sidebar_position
3

Bash

Lograte log gz

обычная архивация

cat access.log | gzip -c -9 > /home/access.log-20220815.gz

Архивация с PV (красиво, наглядно с прогресс баром)

cat access.log | pv -s $(ls -la /var/log/nginx/access.log | awk '{print $5}') | gzip -c -9 > /home/access.log-20220815.gz

Check port

nc -zv <host> <port>

SSH menu

Консольная простая менюшка для быстрого подключения к часто используемым серверам

В примере скрипт в зависимости от домена сервера заранее определяет под каким логином подключаться user или admin

# !/bin/bash
echo `clear`
USER="user"
ADMUSER="admin"
COLUMNS=1
PS3='Please select server: '
SERVERS=(
    'Sentry       srv-sentry'
    'Prometheus   srv-mon'
    'Nginx        srv-nginx'
    'Example1     srv-admin1'
    'Example2     srv-admin2'
    )
select opt in "${SERVERS[@]}"
do
    case $opt in
        *admin1 |*admin2 )   # admin login
            echo "Connecting ${ADMUSER}@${opt##*}"
            ssh $ADMUSER@${opt##* }.akmalov.com
            break
            ;;
        *sentry |*mon | *nginx )  #user login 
            echo "Connecting ${USER}@${opt##*}"
            echo "Message for USER"
            ssh $USER@${opt##* }.akmalov.com
            break
            ;;
        *)
            break
            ;;
    esac
done

iptables

Вывод формате команд

iptables -S -t nat

Список nat

iptables -vL -t nat