Eu tenho uma linha hardstatus definida em meu arquivo .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
Eu rotineiramente faço login em servidores remotos que são compartilhados com outros usuários que possuem sua própria linha de status de hardware favorita. Quero alterar o hardstatus da minha sessão de tela inserindo-o como um comando após iniciar a sessão. Infelizmente, a tela para de aceitar a entrada do comando após atingir cerca de 100 caracteres.
Quando falo sobre comandos de tela, quero dizer aqueles inseridos após amarrar ctrl+a :
Existe uma maneira de aumentar o limite de caracteres do comando de tela além de 100 caracteres ou outra maneira de definir o hardstatus sem alterar o arquivo .screenrc? Seria preferível uma solução para alterá-lo após o início da sessão, mas uma opção de linha de comando ao iniciar a tela seria uma boa alternativa, se possível.
Uma maneira de contornar o problema seria colocar a linha hardstatus em um arquivo e digitar ctrl+ a :source <file>
, ou digitar isto após iniciar a tela:
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}%]'
Mas eu gostaria muito de saber como aumentar o limite de caracteres para comandos.
Desde já, obrigado,
Mateus
Responder1
Você não pode; o limite de 100 caracteres é codificado (acho que o limite superior é aplicado emtela/src/input.c, mas os chamadores de função podem fornecer um buffer mais curto para começar, então esse não é potencialmente o único lugar que precisaria de correção).
Como uma solução que exige menos digitação, recomendo adicionar um .screenrc-DarthAndroid
que primeiro chame source .screenrc
e depois adicione suas configurações de substituição preferidas; em seguida, crie um alias de shell myscr="screen -c ~/.screenrc-DarthAndroid "
.