screen
プロセスを作成しますが、プロセスに接続する前に実行したいいくつかの前提条件に依存するスクリプトを作成しています。
セパレートモードで起動したときに認識されないことがわかりましたが、設定$TERM
にハードコードしたくなかったし、.screenrc
同じ問題を抱えている他の人も見つかりませんでした。
私の環境は次のとおりです。
$ screen --version
Screen version 4.06.02 (GNU) 23-Oct-17
$ echo $TERM
xterm-256color
ここで期待どおりに動作することがわかります。
$ screen -ADRS profile
$ echo $TERM
screen.xterm-256color
ただし、これを行うと、次のエラーが発生します。
$ screen -dmS profile
# I will perform some stuff here, then:
$ screen -ADrS profile
# here you can notice the colors have gone
$ echo $TERM
screen
どのように分離されたものを生成できますが、用語をハードコードせずに最初の場合と同じ動作をscreen
得ることはできますか?$TERM
.screenrc
答え1
私はこれがあなたが探しているものだと思います:
screen -dmS foo -T "screen.$TERM"
このソリューションが完全に普遍的であるかどうかはわかりませんが、上位範囲$ TERMが正しく設定されている場合は正常に動作します。