画面名で環境変数を設定する方法

画面名で環境変数を設定する方法

私はシステムで複数の画面を使用し、作業中の各ポイントに対して別々のセッションを使用します。これで、画面名に基づいて環境変数を設定しようとしています(分岐パスで画面名を指定しました)。私はこれを試しました~/.screenrc

screen -t "ABC-1234" bash -ic 'OUTPUTROOT=/home/me/src/NextGen/branches/ABC-1234/bin'
screen -t "ABC-1234" bash -ic 'SVN_ROOT=/home/me/src/NextGen/branches/ABC-1234'
screen -t "DEF-5678" bash -ic 'OUTPUTROOT=/home/me/src/NextGen/branches/DEF-5678/bin'
screen -t "DEF-5678" bash -ic 'SVN_ROOT=/home/me/src/NextGen/branches/DEF-5678'

しかし、うまくいかないようです。画面が「ABC-1234」または「DEF-5678」で、次のように新しいCtrl-a cウィンドウを開くと、環境変数は設定されません。

答え1

シェルスクリプトで画面を実行するだけです。

#!/bin/sh
SVN_ROOT=/home/me/src/NextGen/branches/ABC-1234 OUTPUTROOT=$SVN_ROOT/bin screen -dm -t "ABC-1234"
SVN_ROOT=/home/me/src/NextGen/branches/DEF-5678 OUTPUTROOT=$SVN_ROOT/bin screen -dm -t "DEF-5678" 

関連情報