4 tipos importantes de scripts de shell para iniciantes no Linux (útil)

Índice:

Anonim

Fonte da imagem: pixabay.com

Script de shell no Linux - Os computadores em geral compreendem a linguagem dos 0 e 1, conhecida como linguagem binária. Décadas atrás, as pessoas costumavam escrever programas e aplicativos como até calculadoras em idiomas binários. Mas isso não era bonito. Apenas imagine! Você quer calcular 73 + 96, como escreveria? Você teria que calcular o número inteiro binário para 73 e 96 e adicioná-los. Uma pessoa tem que ser bem estúpida para fazer isso. Alguém prefere calcular 73 e 96 em um papel e seguir em frente. Mas isso é para a parte menor. E se você tiver que calcular algo como (19273/23 * (2967 3)). Eu diria agora que isso é bastante intenso.

Portanto, um homem indeal aprendendo a codificar tudo na linguagem binária não faz sentido. Essa é a principal razão pela qual os computadores não eram populares nos anos 70 e 80. Porém, mais tarde, mesmo antes do desenvolvimento do Windows, as pessoas começaram a desenvolver kernels e coisas semelhantes, que eram a parte principal do sistema operacional. Os kernels costumavam entender o formato legível por humanos de um programa específico e depois convertê-lo em código de máquina. E foi aí que as linguagens de programação surgiram e mudaram toda a era do mundo da computação. Os aplicativos foram construídos em C e C ++ e, posteriormente, em Java, Python, Ruby e Perl.

A partir de agora, existem mais de 50 linguagens de programação ao redor. E isso é pelo menos aqueles que eu conheço. Sem falar no fato de que existem outras linguagens de programação ainda mais difíceis de entender do que o código de máquina. Meu ponto de vista é, exemplos como programação Chicken e Malbolge. São coisas sérias e desagradáveis ​​de lidar.

Programação de shell… .errr… Script?

Agora você deve estar se perguntando por que não mencionei a programação do Shell acima, juntamente com as outras linguagens de programação. A principal razão de ser o próprio Shell não é uma linguagem de programação. É uma linguagem de script. O Shell é apenas um programa interativo para o usuário que interpreta qualquer entrada do usuário e fornece o resultado desde que o comando seja válido. Em seguida, ele passa o programa para o kernel para executá-lo. O Shell não faz parte do Kernel, mas usa o kernel para executar e criar arquivos.

Tipos de programa de script de shell

Agora, diferentemente de C, C ++ ou Java, existem vários outros tipos de shells que podem ser usados ​​para scripts de shell. A seguir, estão os quatro tipos de shell disponíveis até a data:

Não.Tipo de conchaDescrição
1Bash aka Bourne Again ShellEste é o shell mais comum disponível em todos os sistemas baseados em Linux e debian. É de código aberto e freeware.
2)CSH ou C ShellEsse programa de script do Shell usa a sintaxe do shell da programação C e é quase semelhante ao C.
3)KSH ou Korn ShellKorn é um programa de script Shell baseado em Unix, inicialmente baseado no Bash Shell Scripting. Este shell é bastante avançado e é uma linguagem de programação de alto nível.
4)TCSHNão há forma completa específica de TCSH. Isto é como deve ser. TCSH é uma versão avançada do shell Berkeley Unix C. Mais uma vez, suporta sintaxe no estilo C

Por hoje, não estamos interessados ​​em todas as conchas acima aqui. Estamos interessados ​​apenas no shell Bash, já que é o shell mais usado no mundo atualmente.

The Bash Shell

O programa de script do Bash Shell é uma linguagem de script de alto nível, semelhante à do python. Mas se você já teve alguma experiência com Python, verá que o Bash Shell Scripting é muito mais fácil do que qualquer outra linguagem de script. Pode-se escrever scripts no bash muito mais rápido do que em C, C ++, Java ou Python. O terminal padrão no ambiente mais Linux de hoje, digamos, por exemplo: - Ubuntu, Linux Mint Cinnamon / Rafaela, Fedora, Arch Linux ou qualquer outro ambiente debian consiste no Bash como o Shell padrão. No entanto, você pode verificar todos os ambientes shell presentes no seu sistema digitando o seguinte no Terminal padrão: -

$ cat / etc / shells

(Nota: o cifrão no início é usado para identificar um terminal.)

A sintaxe 'cat' é usada para ler arquivos de texto. Os tipos de programas de script de shell em um ambiente Linux, Unix ou Debian são armazenados no arquivo shell dentro do diretório etc. Cada shell possui seu próprio conjunto exclusivo de sintaxes e seu próprio conjunto de funções integradas. O DOS ou o Windows também possui seu próprio shell, conhecido como o infame 'prompt de comando' ou o 'PowerShell' a partir do Windows 8.1, mas ainda não é tão poderoso quanto o bash. A sintaxe cat fornecerá a lista de shells disponíveis no sistema; no entanto, para encontrar o shell padrão ou verificar a corrente usando o shell, é possível usar a seguinte sintaxe no Terminal de Script do Shell: -

$ echo $ SHELL

A sintaxe 'eco' é usada para imprimir qualquer instrução. Aqui, o 'SHELL' é uma variável atribuída para imprimir o shell atual. O cifrão após 'eco' é usado para representar uma variável no Shell Scripting.

Cursos recomendados

  • Curso de Certificação em Java Hibernate
  • Curso Java Spring
  • Treinamento Online para WordPress
  • Treinamento Ruby

Script de Shell

Portanto, agora você sabe o que é um shell, vamos dar uma olhada no Shell Scripting e por que ele é conhecido como isso. O script de shell nada mais é do que uma série de comandos em um arquivo de texto simples que termina com a extensão '.sh'. O '.sh' determina que é um arquivo executável do shell. Depois de escrever um script de shell, seria necessário alterar a permissão executável usando a 'função chmod'. Por padrão, qualquer shell recém-criado não é executável no ambiente UNIX ou Linux, a menos que as permissões sejam alteradas especificamente. O Shell Scripting é quase semelhante ao da programação em lote do Windows, mas a diferença é que o Shell Scripting é bastante mais poderoso e oferece muito mais ambiente interativo de ponta, além de conclusões de guias. É necessário fazer uso de um bom editor de texto para escrever um shell script. Poucos melhores que eu conheço são Vim, Gedit e Leafpad.

Diferentemente de outras linguagens de programação, os scripts do Shell são mais rápidos de escrever e executar. Você não precisa baixar nenhum pacote ou dependência específica para executar. Eles podem ser usados ​​não apenas por um administrador do sistema, mas também por uma pessoa normal para executar scripts automatizados diariamente. A seguir, é apresentado um exemplo simples de um script escrito aqui.

#! / bin / bash echo -e “Bem-vindo ao primeiro programa shell. \ n” echo -e “Escreva algo aqui e este programa imprimirá o mesmo. \ n” # solicitando ao usuário a entrada de leitura de entrada # lendo a entrada do usuário echo “Você inserido: $ input ” exit 0

Agora, deixe-me explicar todos os parâmetros no código acima. Primeiro, escreva o código acima em um arquivo de texto no formato 'como está' e salve-o com uma extensão que termina com '.sh'. Por exemplo, nomeie o arquivo como 'main_program.sh'. Verifique se não é 'main_program.sh.txt'. A maioria dos iniciantes costuma fazer o mesmo e, em seguida, não é executável. Após a cópia do código acima, altere suas permissões usando a seguinte sintaxe no terminal: -

$ chmod + x main_program.sh OU $ chmod 755 main_program.sh

Sinta-se livre para usar um dos comandos acima, pois os dois fazem a mesma coisa. Nos modernos programas de script do bash shell, o '755' é alterado para '+ x'; portanto, não importa qual deles você usa. Depois de alterar as permissões, digite o seguinte para executá-lo.

$. / main_program.sh

O ponto e a barra são usados ​​para identificar e executar os scripts de shell. Depois de executar o script acima, ele imprimirá a primeira instrução de eco e solicitará que você insira alguma coisa. Depois de inseri-lo, ele imprimirá a mesma coisa para você e sairá do intérprete. Então, deixe-me explicar todas as sintaxes acima. O '#! / Bin / bash' é usado para informar ao intérprete que este é um script bash e o programa de script do shell Bash está localizado no diretório 'bin'. O comando 'echo' é usado para imprimir qualquer instrução e o sinalizador '-e' é usado para indicar ao shell que haverá uma nova linha identificada como uma barra 'n' ou \ n 'ou uma barra' tab 'ou \ t 'ou coisas do gênero dentro da declaração ecoada. A parte do hash na segunda linha é usada para identificar um comentário em um script do bash. O que você escreve depois do hash é comentado e não será executado. Mas isso não se aplica ao '#! / Bin / bash' na primeira linha. É assim que o script deve funcionar. A sintaxe 'ler' é usada para ler qualquer entrada do usuário. E a 'entrada' que mencionei após a sintaxe 'ler' é a variável na qual a entrada do usuário é armazenada. Pode-se usar qualquer variável em vez da entrada. Na segunda última linha, a entrada $ é usada para se identificar como uma variável e gerar a entrada armazenada dentro dela. Finalmente, o comando exit é usado para sair do intérprete com uma saída limpa zero.

Script não interativo

Agora, o exemplo acima é bastante fácil. Mas existem módulos integrados que você pode usar em vez de fornecer todas as entradas sozinho. A seguir, é apresentado um trecho de código, que imprime o nome do usuário que está conectado no momento, a hora atual, a data do calendário e o número de logins: -

#! / bin / bash # Este script imprimirá as informações atuais do usuário conectado, o número de usuários conectados, a data, a hora e o calendário echo “Olá, $ USER” echo “A data e a hora de hoje são 'date`” echo “Número de usuários logados:` who | wc -l` ”

eco "Calendário"

cal

saída 0

Execute esse script depois de alterar as permissões do arquivo acima. Agora, você deve estar se perguntando que, no script anterior, inserimos a entrada e ela retornou a entrada usando a variável Mas aqui, não fornecemos nenhuma entrada dentro da variável '$ USER'; então, como é que ela imprime o usuário exato. O principal motivo é que essas coisas já estão configuradas no sistema. Lembra que eu falei sobre o $ SHELL anteriormente no início, como ele é definido por padrão? Sim, o mesmo ocorre com o $ USER aqui. Quanto à data, se você digitar 'date' sem aspas no terminal, ele imprimirá a data e a hora exatas. Eu apenas usei aspas simples (`) para identificar-se como uma sintaxe e não como uma parte da declaração de eco. A aspas simples (`) executará qualquer sintaxe impressa dentro dele, seja em uma declaração ou em qualquer outro lugar. Quanto à parte do número de usuários, o comando 'who' é usado para verificar os usuários atuais conectados, juntamente com os processos conectados e a data e hora de quando foi iniciado. Mas, como para o comando acima, na verdade, eu o truncei para gerar apenas o número de usuários registrados usando o comando 'wc -l'. A barra (|) ou o que é conhecido popularmente como pipe é usado para combinar dois comandos. O tubo na verdade representa muito mais do que isso, mas não vou entrar em muitos detalhes aqui. E finalmente imprimi o calendário usando o comando 'cal' incorporado para imprimir a data atual no calendário.

The Exit Zero

O Exit Zero é algo que não expliquei em nenhum dos programas escritos acima. A principal razão de ser 'Exit Zero' tem muito mais gravidade do que qualquer uma das sintaxes acima no Shell Scripting. Por padrão, sempre que você executa um script em uma distribuição Linux ou Unix, ele retorna dois tipos de valores ou mais especificamente o status de saída para verificar se a execução do script do shell é bem-sucedida ou não. Se retornar o valor como Zero, a execução foi bem-sucedida, caso contrário, não foi executada ou houve algum erro durante a execução. Assim, digitar 'exit 0' no final de qualquer script verifica o status de execução do script.

Todas as coisas que abordamos aqui são apenas a parte menos básica dos scripts do Shell na distribuição linux. A parte zero de saída e o pipe desempenham um papel importante ao executar vários scripts de shell nos comandos linux e usá-lo junto com as instruções condicionais if e else.

Artigos relacionados:-

Aqui estão alguns artigos que ajudarão você a obter mais detalhes sobre os tipos de script de shell para iniciantes no Linux, basta acessar o link.

  1. Perguntas da entrevista sobre scripts de shell | As 10 perguntas mais úteis
  2. Linux vs Windows - Descubra as 9 diferenças mais impressionantes
  3. Perguntas e respostas da entrevista do Linux | Útil e mais solicitado
  4. Carreiras em Administração Linux
  5. Regras e regulamentos dos parâmetros de script de shell