Экран – наследует среду текущего окна

На экране GNU, как я могу создать новое окно, чья оболочка наследует среду оболочки в текущем окне?

Обычный Ctrl + A C , похоже, не делает этого.

  • cvs auto setenv и логин без повторного ввода пароля
  • О выполнении сценария оболочки
  • Неожиданное поведение отступов, когда я устанавливаю терминал в режим raw - почему это происходит?
  • CasperJS и PHP In Cron Job не могут открывать файлы, отлично работают при запуске Manualy
  • Как подключить терминал к отсоединенному процессу?
  • find: отсутствующий аргумент `-exec '
  • Сценарий Bash не работает с crontab
  • cp, запущенный из результатов кода, не может stat '/ tmp / somedir' работает в оболочке
  • One Solution collect form web for “Экран – наследует среду текущего окна”

    Если вы задали переменные среды на одном экране (скажем, запустите bash), а затем откройте новый экран, это отдельный процесс bash и, следовательно, не будет отображать среду на отдельной уже запущенной оболочке bash. Быстрое решение проблемы:

    env TERMCAP= env | sed -r 's/^(\w+)=(.*)$/\1="\2"/' > env.sh 

    затем, как только вы нажмете Ctrl, чтобы получить новую оболочку, вы можете

     source env.sh 

    Это хаки, и я использую env TERMCAP= env потому что переменная окружения TERMCAP является многострочной и делает sed намного сложнее. Это некрасиво, но это работает 🙂

    Вы можете изменить его, чтобы сделать:

     env TERMCAP= env | sed -r 's/^(\w+)=(.*)$/export \1="\2"/' > env.sh 

    Таким образом, переменные также экспортируются.

    Linux и Unix - лучшая ОС в мире.