Portal   |   Hospedagem   |   Pesquisar  
Registrar  Entrar
Índice do fórum Linux Artigos


Siga-nos:
Siga lnxtotal on Twitter

Linux Shell Script Colorido

   
Área para a postagem de artigos sobre linux.

Moderadores: Fundador, Moderadores

Linux Shell Script Colorido

Mensagempor ruy » 02 Mar 2018, 07:31

A maior parte dos usuários classificam shell script como uma linguagem de fácil aprendizagem. Mas na verdade é difícil. O primeiro passo é, saber o que se deseja fazer, então ver qual o código que executa este comando em shell e aí criar, basta escrever o código em algum editor de texto e salvar. Veja só por exemplo, que de tempos em tempos você quer saber informações do sistema, instalar programas, remover programas, converter/alterar arquivos, fazer backups, adicionar informações, remover informações, etc.


.

Dicas:

.

Não usar shell script como root.

.

O shell script Linux usando o interptetador de comandos Bash começa com o shebang:

#!/bin/bash

.

Um script pode ser executado de dois modos:

1

bash MeuScript.sh

2

Dar permissão e executar:

chmod +x MeuScript.sh

./MeuScript.sh

.

Linux shell script imprimir saída colorida

.

Um script pode usar sequências de escape para produzir textos coloridos no terminal. As cores são representadas por códigos, temos 9 códigos:

reset = 0
black = 30
red = 31
green = 32
yellow = 33
blue = 34
magenta = 35
cyan = 36
white = 37

.

PARA IMPRIMIR UM TEXTO COLORIDO USE ESTES EXEMPLOS ABAIXO COPIANDO E COLANDO ELES NO TERMINAL:

.

echo -e "\e[1;34m Este é o texto em azul! \e[0m"

echo -e "\e[1;30m Este é o texto em preto! \e[0m"

echo -e "\e[1;32m Este é o texto em verde! \e[0m"

echo -e "\e[1;33m Este é o texto em amarelo! \e[0m"

echo -e "\e[1;35m Este é o texto em magenta! \e[0m"

echo -e "\e[1;36m Este é o texto em cyan! \e[0m"

echo -e "\e[1;37m Este é o texto em branco! \e[0m"

.

Podemos imprimir todos este textos ao mesmo tempo para testar. Copie o código que eu escrevi abaixo e cole no seu terminal
:


.

echo -e "\e[1;34m Este é o texto em azul! \e[0m" ; sleep 3 ; echo -e "\e[1;30m Este é o texto em preto! \e[0m" ; sleep 3 ; echo -e "\e[1;32m Este é o texto em verde! \e[0m" ; sleep 3 ; echo -e "\e[1;33m Este é o texto em amarelo! \e[0m" ; sleep 3 ; echo -e "\e[1;35m Este é o texto em magenta! \e[0m" ; sleep 3 ; echo -e "\e[1;36m Este é o texto em cyan! \e[0m" ; sleep 3 ; echo -e "\e[1;37m Este é o texto em branco! \e[0m"

.

Podemos escrever um script colorido que cria pasta, arquivos, escreve algo neste arquivo, duplica o arquivo e move este arquivo para outro lugar. Chamarei este script de:


03script-teste-cores.sh

.

Veja só:

.


Código: Selecionar todos
#!/bin/bash

clear

echo

echo -e "\e[1;34mVamos criar uma \e[1;31mpasta. \e[0m"

echo

sleep 4

mkdir pasta-teste

echo

echo -e "\e[1;30mVamos ver se a \e[1;31mpasta \e[1;30mfoi criada. \e[0m"

echo

sleep 4

ls -t

echo

sleep 3

echo -e "\e[1;32mVamos criar um \e[1;31marquivo de texto \e[1;32mvazio \e[0m"

echo

sleep 4

> texto-teste.txt ; echo ; ls -t ; echo ; sleep 5 ; echo

echo -e "\n\e[1;33mVamos \e[1;31mescrever \e[1;33me \e[1;35mmover \e[1;33mo \e[1;32mtexto-teste.txt \e[1;33mpara:\n \n\e[1;34mpasta-teste\n \e[0m"

echo

sleep 4

echo -e "Esta frase\nserá escrita\nem\ntexto-teste.txt" > texto-teste.txt ; sleep 3 ; mv texto-teste.txt pasta-teste

echo

echo -e "\n\e[1;35mEntrar em \e[1;32mpasta-teste \e[1;35me conferir o conteúdo dela \e[0m\n"

echo

cd pasta-teste/ ; echo ; ls -t ; sleep 4 ; echo ; pwd ; echo ; sleep 4

echo

echo -e "\e[1;36mCopiando \e[1;37mtexto-teste.txt \e[1;36mpara \e[1;34mtexto-teste2.txt \e[0m"

echo

sleep 4

cp texto-teste.txt texto-teste2.txt ; echo ; ls -t ; echo ; sleep 4 ; echo ; pwd ; echo ; sleep 4

echo -e "\e[1;37mFim do script. \e[1;31mPode apagar tudo \e[1;32musando o \e[1;37mmouse. \e[0m"

echo

sleep 4

echo -e "\e[1;37mOu pode executar o comando: \e[1;31mrm -rf pasta-teste\e[1;32m mas antes confere os arquivos de texto.\e[0m"

echo

sleep 4

exit

# Fim do script


.

Linux ShellScript Background Colorido

.

Para um script com fundo colorido, temos outros 9 códigos:


reset = 0, black = 40, red = 41, green = 42, yellow = 43, blue = 44, magenta = 45, cyan = 46, and white=47

.


OBS:
Estes nove são os mais comumente usados.


.

Como escrever uma frase com fundo colorido? Usar echo -e, aspas, caractere de escape para fundo preto, escrever um texto e por fim, usar caractere para resetar ao fundo original. Começamos escrevendo:

.

echo -e "


Depois das aspas:

\e[1;40m

Aí vem o texto a ser digitado. Após o texto que você digitou usa-se:

\e[0m


Fecha aspas.


\e[0m serve para resetar o fundo (background) voltando ao padrão.

.

Fica assim:


Código: Selecionar todos
echo -e "\e[1;40m Este é o Fundo em preto \e[0m"


.

Teste usando este script que eu escreví:

.


Código: Selecionar todos
 #!/bin/bash

    clear

    echo

    # Para um fundo colorido, temos outros 9 códigos: reset = 0, black = 40, red = 41, green = 42, yellow = 43, blue = 44, magenta = 45, cyan = 46, and white=47, are the commonly used color codes.

    echo -e 'Um script também pode\n \nusar sequências de escape\n \npara produzir\n \nfundos coloridos no terminal.\n \nBackground colorido.'

    echo

    sleep 7

    clear

    echo -e 'Para um fundo colorido, temos outros 9 códigos:\n \nreset = 0\n \npreto = 40\n \nvermelho = 41\n \nverde = 42\n \namarelo = 43\n \nazul = 44\n \nmagenta = 45\n \ncyan = 46\n \nwhite=47'

    # O caractere de escape para fundo preto é: "\e[1;40m" após o texto digitado, usa: "\e[0m" para resetar o fundo (background) voltando ao padrão.

    echo

    sleep 8

    clear

    echo -e "\e[1;40m Este é o Fundo em preto \e[0m"

    echo

    sleep 2

    echo -e "\e[1;41m Este é o Fundo em vermelho \e[0m"

    echo

    sleep 2

    echo -e "\e[1;42m Este é o Fundo em verde \e[0m"

    echo

    sleep 2

    echo -e "\e[1;43m Este é o Fundo em amarelo \e[0m"

    echo

    sleep 2

    echo -e "\e[1;44m Este é o Fundo em azul \e[0m"

    echo

    sleep 2

    echo -e "\e[1;45m Este é o Fundo em magenta \e[0m"

    echo

    sleep 2

    echo -e "\e[1;46m Este é o Fundo em cyan \e[0m"

    echo

    sleep 2

    echo -e "\e[1;47m Este é o Fundo em branco \e[0m"

    echo

    sleep 3

    clear

    echo -e '\e[1;47m\e[1;31mEntão é isto! Até breve!\e[0m'

    sleep 3

    echo

    echo -e '\e[1;47m\e[1;30mLembre-se! Pense outra cor!\e[0m'

    echo

    sleep 2

    exit

    # Fim do script


.
ruy
Presente
Presente
 
Mensagens: 29
Registrado em: 06 Mai 2017, 14:57
Distribuição Linux utilizada: Puppy

Voltar para Artigos

Quem está online

Usuários navegando neste fórum: Nenhum usuário registrado e 1 visitante

cron