Navegando pelo mundo do Linux Bash Script - Parte III
- 1793
- 527
- Enrique Gutkowski PhD
Os seguintes artigos seguintes de 'Script de shell'Séries foram muito apreciadas e, portanto, estou escrevendo este artigo para estender o processo sem fim de aprender.
Script de shell básico Parte 3- Entenda as dicas básicas de linguagem de script linux shell - Parte I
- 5 scripts de shell para iniciantes Linux para aprender programação de shell - Parte II
Palavras -chave Bash
A palavra -chave é uma palavra ou símbolo que tem um significado especial para uma linguagem de computador. Os seguintes símbolos e palavras têm significados especiais para Bash Quando eles não são calculados e a primeira palavra de um comando.
! ESAC SELECT caso FI Então [[[faça até]] Faça uma função enquanto Elif se houver tempo em
Ao contrário da maioria dos idiomas de computador, Bash permite que as palavras -chave sejam usadas como nomes variáveis Mesmo que isso possa dificultar a leitura dos scripts. Para manter os scripts compreensíveis, as palavras-chave não devem ser usadas para nomes de variáveis.
Um comando é implementado no shell como $(comando). Você pode ter que incluir o caminho completo do comando. e.g., $ (/bin/data), para execução correta.
Você pode conhecer o caminho de um programa específico usando 'Onde éComando. e.g., onde a data
[[email protegido]/]# whereis date:/bin/date/usr/share/man/man1/data.1.gz
Isso é o suficiente por enquanto. Não estaremos falando muito sobre essas teoria agora. Vindo para scripts.
Mover o diretório de trabalho atual
Mova do diretório de trabalho atual para qualquer nível, apenas fornecendo o valor numérico no final do script enquanto executa.
#! /BIN/BASH Nível = $ 1 para (i = 1; i <= LEVEL; i++)) do CDIR=… /$CDIR done cd $CDIR echo "You are in: "$PWD exec /bin/bash
Salve os códigos acima como “acima.sh“, Na sua área de trabalho. Faça dele executável (CHMOD 755 UP.sh). Correr:
./acima.SH 2 (moverá o diretório de trabalho atual para dois níveis para cima).
./acima.SH 4 (moverá o diretório de trabalho atual para quatro níveis para cima).
Uso e área de aplicação
Em scripts maiores que contêm pasta dentro da pasta dentro… contendo Bibliotecas, binários, ícones, executáveis, etc em local diferente, você, como desenvolvedor.
Observação: Pois é um loop no script acima e continuará sendo executado até que os valores sejam verdadeiros para o loop.
Saída de amostra
[[email protegido] /]# chmod 755 up [[email protegido] /]# ./acima.sh 2 você está dentro: / [[email protegido] /]# ./acima.sh 4 você está dentro: / [[email protegido] /]#
Baixar.sh
Crie um arquivo ou pasta aleatória
Crie um arquivo aleatório (pasta) sem chance de duplicação.
#! /bin/bash eco "hello $ user"; eco "$ (tempo de atividade)" >> "$ (data)".txt echo "Seu arquivo está sendo salvo para $ (PWD)"
Este é um script simples, mas está funcionando, não é muito simples.
- 'eco': Imprime tudo escrito dentro das citações.
- '$': É uma variável de shell.
- '>>': A saída é redirecionada para a saída de data comando seguido por TXT extensão.
Nós sabemos a saída de data comando é data, e tempo em hora, minuto, segundo juntamente com ano. Portanto, poderíamos obter saída em um nome de arquivo organizado sem a chance de duplicação de nome do arquivo. Pode ser muito útil quando o usuário precisa do arquivo criado com Carimbo de hora para referência futura.
Saída de amostra
[[email protegido] /]# ./RandomFile.SH Hello Server, seu arquivo está sendo salvo para/home/servidor/desktop
Você pode visualizar o arquivo criado na área de trabalho com a data de hoje e a hora atual.
[[Email Protected] /]# Nano SAT \ JUL \ 20 \ 13 \: 51 \: 52 \ ist \ 2013.txt 13:51:52 UP 3:54, 1 Usuário, Carregar Média: 0.09, 0.12, 0.08
Uma implementação mais detalhada do script acima é dada abaixo, que funciona no princípio acima e é muito útil para reunir as informações de rede de um Linux servidor.
Baixe o RandomFile.sh
Script para coletar informações de rede
Reúne informações de rede em um Linux servidor. O script é muito grande e não é possível postar todo o código e saída do script aqui. Então, é melhor você pode baixar o script usando o link abaixo do download e testá -lo você mesmo.
Observação: Você pode precisar instalar LSB-CORE pacote e outros pacotes e dependência necessários. Apt ou Yum os pacotes necessários. Obviamente você precisa ser raiz Para executar o script, porque a maioria dos comandos usados aqui está configurada para ser executada como raiz.
Saída de amostra
[[email protegido] /]# ./CollectNetworkInfo.sh as informações de configuração de rede escritas para rede.20-07-13.informações.TXT. Envie um e -mail para este arquivo para [Email Protected] _provider.com. Ktop
Você pode alterar o endereço de e -mail acima em seu script para que ele seja enviado para você. O arquivo gerado automaticamente pode ser visualizado.
Baixe CollectNetNetworkInfo.sh
Script para converter maiúsculas em minúsculas
Um script que converte Maiúsculas para minúsculo e redireciona a saída para um arquivo de texto “pequeno.TXT”Que pode ser modificado conforme necessário.
#!/bin/bash echo -n "Digite o nome do arquivo:" Leia o nome do arquivo se [ ! -f $ FILENAME]; Então eco "nome do arquivo $ nome não existe" Exit 1 fi tr '[a-z] "[a-z]'> pequeno.TXT
Este script acima pode converter o caso de um arquivo de qualquer comprimento com um único clique de maiúsculas para minúsculo e vice-versa, se necessário, com pouca modificação.
Saída de amostra
[[email protegido] /]# ./convertlowercase.sh enter o nome do arquivo: a.Arquivo inicial txt: a b c d e f g h i j k…
Novo arquivo (pequeno.TXT) saída:
A b c d e f g h i j k…
Download convertlowercase.sh
Programa de calculadora simples
#! /bin/bash clear soma = 0 i = "y" eco "digite um não."Leia N1 Echo" Digite o segundo não."Leia n2 enquanto [$ i =" y "] do eco" 1.Adição "eco" 2.Subtração "Echo" 3.Multiplicação "Echo" 4.Divisão "ECHO" Digite sua escolha "Leia CH CASO $ CH em 1) SUM = 'EXPR $ N1 + $ N2' ECHO" SUM = "$ SUM ;; 2) SUM = 'EXPR $ N1 - $ N2' ECHO" Sub = "$ SUM ;; 3) SUM = 'EXPR $ N1 \ * $ N2' ECHO" MUL = "$ SUM; ) eco "escolha inválida" ;; ESAC ECHO "Você quer continuar (s/n)) ?"Leia eu se [$ i != "y"] Então saia
Saída de amostra
[[email protegido] /]# ./SimpleCalc.sh digite um não. 12 Digite o segundo não. 14 1.Adição 2.Subtração 3.Multiplicação 4.Divisão Digite sua escolha 1 soma = 26 Você quer continuar (S/N)) ? y 1.Adição 2.Subtração 3.Multiplicação 4.Divisão Digite sua escolha 3 Mul = 14812 Você quer continuar (S/N)) ? n
Baixe o SimpleCalc.sh
Então você viu como foi fácil criar um programa poderoso como cálculos de uma maneira tão simples. Não é o fim. Estaremos compensando pelo menos mais um artigo desta série, cobrindo uma ampla perspectiva da Visualização da Administração.
É tudo por agora. Sendo o leitor e o melhor crítico, não se esqueça de nos dizer quanto e o que você gostou neste artigo e o que você quer ver no futuro artigo. Qualquer pergunta é muito bem -vinda em comentar. Até então, fique saudável, seguro e sintonizado. Como e Compartilhar nós e nos ajude a espalhar.
- « Guia de instalação do servidor Fedora 21 com capturas de tela
- DIA -A DIA Aprendendo linguagem de programação Java - Parte I »