IMHO, o prompt é a melhor coisa para lembrar de onde você está. Ele pode ser usado para lembrá-lo sobre a máquina, o nome do usuário atual, o diretório, etc. O prompt está sempre lá na linha de comando, então será difícil ignorá-lo. Usar algum outro comando para procurar o nome da máquina atual (como hostname
) obviamente também funcionará, mas você se esquecerá de fazê-lo.
Defina seu prompt principal para uma string que inclua o nome do host:
PS1="$(id -un)@$(hostname) \$ "
Isto irá, na minha máquina atual, e para o meu usuário, definir o prompt para
[email protected] $
Você pode usar hostname -s
em vez de apenas hostname
para remover a parte do domínio do nome do host.
Alguns shells, como bash
, possuem notações abreviadas que você pode usar para a mesma coisa. Por bash
(substitua \H
por \h
para obter a versão mais curta do nome do host):
PS1='\u@\H \$ '
Observe que não há necessidade de export
PS1
, pois é usado apenas pelo processo atual do shell.
Alterações nesta variável podem ser feitas no seu arquivo de inicialização do shell. Para bash
, modifique ~/.bashrc
. Leia o manual do seu shell sobre PS1
.
Para telas muito pequenas, convém criar seu próprio prompt dinâmico:
case "$(hostname)" in
bigserver*) promptstr='bs' ;;
srv-*) promptstr='srv' ;;
accounting*) promptstr='a' ;;
web-dev-*) promptstr='wd' ;;
*) promptstr=$(hostname -s) ;;
esac
PS1="$promptstr \$ "
Ou apenas use os três primeiros caracteres do nome do host:
HOSTNAME=$(hostname)
PS1="${HOSTNAME:0:3} \$ "
(isso requer um shell que saiba como fazer esse tipo de substituição de variável, obviamente, mas bash
faz)
... ou apenas outro indicador para lembrá-lo de que você não é mais local, como usar um *
antes do $
( PS1='*$ '
) remotamente sem usar esse indicador localmente. Ou qualquer outro dos muitos prompts possíveis.