IP-адрес в строке приглашения bash

Открываем для редактирования .profile в корневом каталоге пользователя:

vim ~/.profile

Далее добавим строку

export PS1=`/sbin/ifconfig en0 | /usr/bin/perl -ne 'if ( m/^\s*inet (?:addr:)?([\d.]+).*?cast/ ) { print qq($1\n); exit 0; }'`:$PS1

После этого получим что-то типа этого

Untitled-3Открываем для редактирования .profile в корневом каталоге пользователя:

vim ~/.profile

Далее добавим строку

export PS1=`/sbin/ifconfig eth0 | /usr/bin/perl -ne 'if ( m/^\s*inet (?:addr:)?([\d.]+).*?cast/ ) { print qq($1\n); exit 0; }'`:$PS1

После этого получим что-то типа этого

Untitled-3

Консольный менеджер ssh сессий

Когда количество серверов начинает зашкаливать, возникает необходимость их организовать. Каждый раз забивать ip адрес нет никакого желания, особенно если делаешь это по 50 раз за день. К сожалению функции стандартного Терминал-а мне не подошли, так как времени на открытие новой сессии через стандартное меню уйдет даже больше, чем если набирать «ssh [email protected] -p3322». За насколько минут я написал небольшой скрипт, который выводит список серверов с возможностью выбора к какому нужно подключиться. Выглядит это примерно так:

servers

В данном примере если сервер выбран из подсети 192.173.0. — подключение будет по порту 3322. Сам скрипт, который вы можете доработать по своему желанию такой:
#!/bin/sh
ARRAY=('192.168.0.100' '192.173.0.1' '192.173.0.163' '192.173.0.166' '192.173.0.167' '192.173.0.168' '192.173.0.169')
SERVERS=${#ARRAY[@]}
echo "Выбери сервер:"
for (( i=0;i<$SERVERS;i++)); do
    echo $i\) ${ARRAY[${i}]}
done 

read choice

echo "Соединяемся с ${ARRAY[${choice}]}"
net=$(echo ${ARRAY[${choice}]} | awk 'BEGIN {FS="."} {print $1"."$2"."$3"."}')
if [ $net == "192.173.0." ]; then
ssh [email protected]${ARRAY[${choice}]} -p3322
else
ssh [email protected]${ARRAY[${choice}]}
fi
done

Когда количество серверов начинает зашкаливать, возникает необходимость их организовать. Каждый раз забивать ip адрес нет никакого желания, особенно если делаешь это по 50 раз за день. К сожалению функции стандартного Терминал-а мне не подошли, так как времени на открытие новой сессии через стандартное меню уйдет даже больше, чем если набирать "ssh [email protected] -p3322". За насколько минут я написал небольшой скрипт, который выводит список серверов с возможностью выбора к какому нужно подключиться. Выглядит это примерно так:

servers

В данном примере если сервер выбран из подсети 192.173.0. - подключение будет по порту 3322. Сам скрипт, который вы можете доработать по своему желанию такой:
#!/bin/sh
ARRAY=('192.168.0.100' '192.173.0.1' '192.173.0.163' '192.173.0.166' '192.173.0.167' '192.173.0.168' '192.173.0.169')
SERVERS=${#ARRAY[@]}
echo "Выбери сервер:"
for (( i=0;i<$SERVERS;i++)); do
    echo $i\) ${ARRAY[${i}]}
done 

read choice

echo "Соединяемся с ${ARRAY[${choice}]}"
net=$(echo ${ARRAY[${choice}]} | awk 'BEGIN {FS="."} {print $1"."$2"."$3"."}')
if [ $net == "192.173.0." ]; then
ssh [email protected]${ARRAY[${choice}]} -p3322
else
ssh [email protected]${ARRAY[${choice}]}
fi
done