Sem cor no MOTD

2

Comprei recentemente um Raspberry Pi e comecei a brincar com ele. Depois de alterar meu MOTD (para incluir cores), os códigos de cores estão chegando como texto bruto em vez de executar.

Estou conectado ao meu Raspberry Pi via SSH em um terminal Mac. Eu também tentei diretamente através da linha de comando do Raspberries. Como faço para permitir cores?

Abaixo está uma captura de tela do MOTD com falha:

Oarquivoqueestoueditandoé"/ etc / motd". Estou editando com "nano".

Código abaixo:

The programs included with the Debian GNU/Linux system are free software;
the exact distribution terms for each program are described in the
individual files in /usr/share/doc/*/copyright.

Debian GNU/Linux comes with ABSOLUTELY NO WARRANTY, to the extent
permitted by applicable law.

#!/bin/bash
echo "$(tput setaf 2)
   .~~.   .~~.
  '. \ ' ' / .'$(tput setaf 1)
   .~ .~~~..~.
  : .~.'~'.~. :
 ~ (   ) (   ) ~
( : '~'.~.'~' : )
 ~ .~ (   ) ~. ~
  (  : '~' :  ) $(tput sgr0)Raspberry Pi$(tput setaf 1)
   '~ .~~~. ~'
       '~'
$(tput sgr0)"
    
por Rui F Ribeiro 18.08.2015 / 12:25

1 resposta

4

Devido ao fato de que "etc / motd" é um arquivo de texto simples, os comandos não são executados, mas sim impressos da seguinte forma:

#!/bin/bash
echo "$(tput setaf 2)
   .~~.   .~~.
  '. \ ' ' / .'$(tput setaf 1)
   .~ .~~~..~.
  : .~.'~'.~. :
 ~ (   ) (   ) ~
( : '~'.~.'~' : )
 ~ .~ (   ) ~. ~
  (  : '~' :  ) $(tput sgr0)Raspberry Pi$(tput setaf 1)
   '~ .~~~. ~'
       '~'
$(tput sgr0)"

Em vez disso, crie um novo arquivo chamado "motd.sh" dentro de "/ etc" e insira o MOTD lá. Este é agora um script executável, mas não é executado. Então vá para "/ etc / profile" e adicione no final do arquivo:

bash /etc/motd.sh

Isso agora executará o script na conexão e na cor de exibição.

   .~~.   .~~.
  '. \ ' ' / .'
   .~ .~~~..~.
  : .~.'~'.~. :
 ~ (   ) (   ) ~
( : '~'.~.'~' : )
 ~ .~ (   ) ~. ~
  (  : '~' :  ) Raspberry Pi
   '~ .~~~. ~'
       '~'
    
por 18.08.2015 / 12:43