Gnu スクリーン: コマンドの 100 文字制限を回避する - ハードステータスを変更できない

Gnu スクリーン: コマンドの 100 文字制限を回避する - ハードステータスを変更できない

.screenrc ファイルにハードステータス行を設定しました:

hardstatus alwayslastline '%{= kg}[ %{G}%H %{g}][%= %{= kB}%?%-Lw%?%{+b r}(%{G}%n*%f %t%?(%u)%?%{r})%{-b B}%?%+Lw%?%?%= %{g}%]'
# This is 127 characters

私は、自分の好みのハードステータス ラインを持つ他のユーザーと共有されているリモート サーバーに定期的にログインします。セッションを開始した後、コマンドとして入力して、screen セッションのハードステータスを変更したいと考えています。残念ながら、screen は、約 100 文字に達するとコマンドの入力を受け付けなくなります。

スクリーンコマンドについて話すとき、私はctrl+をタイした後に入力されるコマンドを意味します。a :

screen コマンドの文字数制限を 100 文字以上に増やす方法、または .screenrc ファイルを変更せずにハードステータスを設定する別の方法はありますか? セッションの開始後に変更するソリューションが望ましいですが、可能であれば、screen の起動時にコマンド ライン オプションを使用するのも良い代替手段です。

この問題を回避する 1 つの方法は、ハードステータス行をファイルに入れてctrl+と入力するa :source <file>か、画面の起動後に次のように入力することです。

screen -p <SESSION_NAME or PID> -X hardstatus alwayslastline '%{= kg}[ %{G}%H %{g}][%= %{= kB}%?%-Lw%?%{+b r}(%{G}%n*%f %t%?(%u)%?%{r})%{-b B}%?%+Lw%?%?%= %{g}%]'

しかし、コマンドの文字数制限を増やす方法を本当に知りたいです。

前もって感謝します、

マシュー

答え1

できません。100文字の制限はハードコードされています(上限はスクリーン/ソース/入力.cただし、関数呼び出し側が最初から短いバッファを提供する可能性もあるため、パッチを適用する必要があるのはそこだけではない可能性があります。

入力の手間が少ない解決策として、.screenrc-DarthAndroid最初に を呼び出してsource .screenrc、次に優先するオーバーライド設定を追加する を追加し、次にシェル エイリアス を作成することをお勧めしますmyscr="screen -c ~/.screenrc-DarthAndroid "

関連情報