Linux: Tentando Out Scripts Shell Simples

Se você não é um programador, você pode sentir-se apreensivo sobre programação. mas shell scripting (Ou programação) em Linux pode ser tão simples como armazenar alguns comandos em um arquivo. Na verdade, você pode ter um programa shell útil que tem um único comando.

scripts shell são populares entre os administradores de sistema. Se você é um administrador de sistema, você pode construir uma coleção de scripts shell personalizadas que ajudam a automatizar tarefas que você executa com freqüência. Se um disco rígido parece estar ficando cheio, por exemplo, você pode querer encontrar todos os arquivos que excedam alguma dimensão (digamos, 1MB) e que não tenham sido acessados ​​nos últimos 30 dias.

Além disso, você pode querer enviar uma mensagem de e-mail a todos os usuários que têm arquivos grandes, solicitando que eles arquivar e limpar esses arquivos. Você pode realizar todas essas tarefas com um script shell. Você pode começar com a seguinte encontrar comando para identificar arquivos grandes:

find / -type f -atime +30 -size + 1000k -exec ls -l {} -> / tmp / largefiles

Este comando cria um arquivo chamado / Tmp / largefiles, que contém informações detalhadas sobre os arquivos antigos ocupar muito espaço. Depois de obter uma lista dos arquivos, você pode usar alguns outros comandos Linux - como ordenar, cortar, e sed - preparar e enviar mensagens de correio para os usuários que têm arquivos grandes para limpar.

Em vez de digitar todos estes comandos manualmente, colocá-los em um arquivo e criar um script shell. Isso, em poucas palavras, é a essência de scripts shell - para reunir comandos shell em um arquivo para que você possa facilmente realizar tarefas de administração do sistema repetitivas.

bater roteiros, assim como a maioria dos comandos do Linux, aceitar as opções de linha de comando. Dentro do script, você pode consultar as opções como $ 1, $ 2, e assim por diante. O nome especial $ 0 refere-se ao nome do próprio script.

Aqui está um típico bater script que aceita argumentos:

#! / Bin / shecho "O nome desse script é: $ 0" echo Argumento 1: $ 1echo Argumento 2: $ 2

A primeira linha executa o / Bin / sh programa, que processa subsequentemente o resto das linhas no script. O nome / Bin / sh tradicionalmente refere-se ao shell Bourne - o primeiro shell Unix. Na maioria dos sistemas Linux, / Bin / sh é um link simbólico para / Bin / bash, que é o programa executável bater.

Guardar este simples script em um arquivo chamado simples e fazer esse arquivo executável com o seguinte comando:

chmod + x simples

Agora execute o script da seguinte forma:

./simples

Ele exibe o seguinte resultado:

O nome desse script é: ./simpleArgument 1: Argumento 2:

A primeira linha mostra o nome do script. Porque você executar o script sem argumentos, o script exibe nenhum valor para os argumentos.

Agora, tente executar o script com alguns argumentos, como este:

./ Simples "Este é um argumento" terceira segundo argumento

Desta vez, o script exibe mais de saída:

O nome desse script é: ./simpleArgument 1: Este é um argumentArgument 2: segunda-argumento

Como mostra a saída, o shell trata a cadeia inteira dentro das aspas duplas como um único argumento. Caso contrário, o shell utiliza espaços como separadores entre argumentos na linha de comando.

Este script de exemplo ignora o terceiro argumento porque o roteiro é projetado para imprimir somente os dois primeiros argumentos.

menu