Как перезагрузить .bashrc во всех окнах в GNU screen?

Как перезагрузить .bashrc во всех окнах в GNU screen?

Обычно я использую около 10 окон в GNU screen и постоянно настраиваю свой .bashrc. Я хотел бы иметь возможность передавать данные .bashrcпо всем окнам screen с помощью однострочного кода. Могу ли я транслировать команду всем окнам screen без отсоединения сеанса, запуская команду (в данном случае, отправляя данные из профиля) и повторно присоединяясь к сеансу screen? Я использую Mac OS 10.8.

Я считаюэто решениетакже подойдет для того, что я хочу сделать, но мне интересно, есть ли более лаконичный способ.

решение1

ИзРуководство пользователя экрана, вы можете отправить произвольный текст во все окна экрана с помощью аргумента командной строки -X в сочетании со встроенными командами экранавивещис помощью следующей команды, в вашем случае

screen -X at \# stuff "source ~/.bashrc\n"

Имейте в виду, что эта команда эквивалентна вводу "source ~/.bashrc" в каждом окне. Если окно не находится в командной строке bash, а, скажем, редактирует файл с помощью vim, это приведет к неожиданным результатам.

Связанный контент