por que a tela não mostra o nome atual do processo em execução? (Mac OSX Terminal bash)

7

Estou executando a tela dentro do aplicativo Mac OSX Terminal (bash).

Aqui está o screenrc (obtido de aqui ):

$ cat ~/.screenrc 
termcapinfo xterm* ti@:te@
startup_message off
defutf8 on
shelltitle "$ |what?" # make screen assign window titles automatically
hardstatus alwayslastline
hardstatus string '%{= kw} [ %{= kb}%H%{= kw} ][%= %{= kw}%?%-Lw?%{= kW}%n*%f %t%?%?%{= kw}%?%+Lw%?%?%= ][ %{r}%l%{w} ]%{w}[%{r} %m/%d/%y/ %C %A %{w}]%{w}'
$

Como pode ser visto, eu tenho a linha para mostrar o nome do processo atual como o título na tela:

shelltitle "$ |what?" # make screen assign window titles automatically

Mas dentro da tela eu só vejo "o que?" (o padrão) em vez do nome do processo. O que sugere que "$" não está funcionando.

O que estou perdendo? E como funciona o "$ | something-else"?

    
por arnab 14.08.2009 / 05:37

1 resposta

5

Qual é o seu prompt bash definido para (ou seja, a variável PS1)?

Experimente o seguinte no seu .bashrc ou .profile :

export PS1='\[3k3\\]\u@\h:\w\$ '

e no seu .screenrc:

shelltitle "$ |bash:"

Isto é o que eu tenho e funciona. Basicamente, a tela precisa de uma string mágica para saber como o seu prompt termina para que ele possa pegar o comando que está sendo executado. Você pode variar, mas veja a explicação nesta página para mais informações sobre como funciona:

por 14.08.2009 / 06:32