ifconfig
в наши дни считается устаревшим. Вместо этого попробуйте использовать инструмент ip
. Все последние дистрибутивы должны его поддерживать, это часть набора инструментов iproute
.
Если вам просто нужен дополнительный IP-адрес на интерфейсе, используйте следующую команду:
ip addr add 10.50.55.130/24 dev eth0
И я согласен с комментарием Йохана Мирена к вашему вопросу.
Я думаю, можно с уверенностью сказать, что это невозможно сделать только с помощью bash. Вам понадобится либо более высокий язык программирования, такой как perl/python, либо управление экземпляром tmux с помощью скрипта.
Вот краткий обзор задействованной технологии:
Есть несколько инструментов, которые позволяют bash вызывать ioctl , но я не думаю, что он может обрабатывать все вызовы, необходимые для выделения pty, и в любом случае это не стандартный инструмент.
Возможно, вы сможете обойти это, вручную создав узлы устройств pty , но вам нужно будет работать от имени пользователя root, и это приведет к беспорядку.
bash может находить различные управляющие последовательности терминала из команды tput
, и вы действительно можете писать bash-скрипты, которые отображают окна текста, но без ncurses это трудно сделать правильно и пересечь -платформу, и это займет тонны вашего времени.
Короче говоря, я не думаю, что вы можете сделать это с помощью простых инструментов bash и posix.
Perl установлен почти на всех unix-системах, и perl может выполнять ioctl
вызовы,так что да, это должно быть возможно написать на Perl даже без установки каких-либо дополнительных модулей. Однако, опять же, я ожидаю, что это займет слишком много времени, по крайней мере, без использования некоторых дополнительных вспомогательных модулей, таких как IO ::Pty и Curses . Но даже при всем этом предстоит много работы.
Думаю, вам лучше всего попробовать написать скрипт tmux . Я не делал этого раньше, но в этом посте создается впечатление, что проект длится несколько -дней, а не несколько -недель -и -тонн --учебного проекта.
Если ваше основное возражение связано с необходимостью установки tmux, вы можете попробовать загрузить и скомпилировать статический двоичный файл tmux, а затем распространить его со своим скриптом. Статический двоичный файл не зависит от какой-либо библиотеки в системе и должен работать на любом современном ядре Linux с правильной архитектурой. Вы даже можете скомпилировать двоичные файлы для нескольких архитектур, а затем определить, какой двоичный файл использовать.