Índice
Embora geralmente o utilizemos para operações administrativas ou de gerenciamento de arquivos, o console do Linux estende sua funcionalidade muito além desse propósito, permitindo-nos programar scripts de acordo com nossas necessidades.Basicamente, dizemos que é um arquivo que contém código escrito em uma determinada linguagem de programação que o sistema usa para uma determinada tarefa. Não precisa ter uma entrada externa ou interface gráfica, mas precisa dar saída aos dados processados.
Para começar, devemos ter um editor de texto e vontade de programar. Os arquivos que salvamos com a extensão .sh podem ser executados (ou interpretados) pelo console, desde que a primeira linha seja a seguinte:
#! / bin / bash
Isso diz ao sistema para usar o console para executar o arquivo. Além disso, o caractere # permite que você escreva comentários.
Vamos tentar vários exemplos
Criamos um arquivo chamado downloads.sh
#! / bin / bash # vamos criar um alias chamado downloads com o endereço do diretório Downloads alias downloads = ’/ home / user / Downloads’
Salve-o como downloads.sh
Para iniciar o script 'Bash, dê a ele permissões de execução. Para fazer isso, digite no terminal de comando:
chmod u + x downloads.shLembre-se de executar este comando para cada script que você criar
Inicie o ‘script’ executando no terminal
./downloads.shSe funcionou, você deve estar posicionado no diretório Downloads
Use variáveis e parâmetros no script
#! / bin / bash # Usando variáveis # echo "Seu primeiro argumento é" $ 1 echo "Seu segundo argumento é" $ 2
A forma de executar o script será, por exemplo
./miScript.sh hi 4
O resultado deve ser
Seu primeiro argumento é olá
Seu segundo argumento é 4
Como tornar possível inserir variáveis e parâmetros durante a execução
#! / bin / bash echo "Digite seu nome e pressione ENTER" #Leia o nome da variável, leia o nome echo "Seu nome é $ name"
Um exemplo mais útil de um script que nos dirá quais processos um determinado usuário inserido executa
#! / bin / bash RES = s #response ao loop continuar se enquanto [$ RES = s] do echo "Digite o nome de usuário:" leia USU #username ps aux | grep $ USU echo "Deseja continuar?" ler RES feito
Se quisermos evitar que qualquer usuário execute o script no início, podemos colocar o seguinte código de forma que só possa ser executado pelo usuário root
#! / bin / bash if [[$ EUID -ne 0]]; then echo "Este script deve ser executado pelo usuário root" 1> & 2 exit 1 fiSe qualquer outro usuário tentar executar o script, ele não funcionará e a janela do terminal será fechada.
Também podemos permitir que alguns usuários o executem para eles no início, colocaremos o seguinte código
#! / bin / bash AUTHORIZED_USER = "usuário permitido" if [$ USER! = $ AUTHORIZED_USER]; then echo "Este script deve ser executado pelo usuário $ AUTHORIZED_USER" 1> & 2 exit 1 fi
Vamos criar um menu bash para dar diferentes opções para um usuário ou para facilitar a interação
#! / bin / bash clear while: do echo "Escolha uma opção" echo "1. Usuários logados?" echo "2. Consumo de recursos" echo "3. Serviços em execução?" echo "4. Saia" echo -n "Selecione uma opção [1 - 4]" leia a opção caso $ opção em 1) echo "Eles estão conectados:"; quien;; 2) echo "Running htop"; htop ;; 3) lsof -n -i -P | grep '*;; 4) echo "End"; saída 1;; *) echo "$ opc é uma opção inválida?"; echo "Pressione uma tecla para continuar …"; ler foo;; feitoGostou e ajudou este tutorial?Você pode recompensar o autor pressionando este botão para dar a ele um ponto positivo