Buscar

Programação para servidores (1)

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 3, do total de 7 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 6, do total de 7 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Prévia do material em texto

Programação para servidores
Shell scripts são mais freqüentemente usados para tarefas de administração de sistemas ou para combinar programas existentes para concluir um trabalho pequeno e especifico.
 LINGUAGEM COMPILADAS;
Os programas que são traduzidos de seu código fonte originais para o código objeto.
A vantagem das linguagens compiladas é que elas são eficientes.
LINGUAGENS DE SCRIPTS;
São geralmente interpretadas. Um programa compilado normal, o interpretador, lê o programa, o traduz para um formato interno e o executa.
PORQUE ULTILIZAR UM SHELL SCRIPT;
Pela simplicidade, pela portabilidade e pela facilidade de desenvolver.
COMANDO WHO;
O comando Who mostra quem está conectado.
COMANDO WC;
Usamos o programa wc (Word count), que conta linhas, pela palavras e caracteres. (tipo ctrl+f).
SÍMBOLO | (PIPE);
O símbolo pipe cria um canal entre os dois programas, a saída de um é entrada de outro.
Comando ./;
O comando ./ serve para executar um script.
A PRIMEIRA LINHA #!;
Indica o tipo do interpretador do Shell.
OBSERVAÇÕES:
Não coloque espaço em branco extra depois de uma opção.
Voce deve saber o caminho completo do interpretador a ser executado. (#!/Bin/bash).
COMANDO E ARGUMENTOS;
A tarefa mais simples do Shell é simplesmente executar comandos. Você digita comandos, um por vez, e o Shell os executa.
ponto-e-vírgulas separam múltiplos comandos na mesma linha.
FUNDAMENTOS DE COMANDOS;
Os comandos externos são aqueles que o Shell executa através da criação de um processo separado;
Criar um novo processo, iniciado como uma cópia do Shell.
Novo processo, procura pelo dado comando nos diretórios listados na variável PATH, onde irá procurar os comandos.
Executa, no novo processo, o programa encontrado através da substituição do programa Shell em execução pelo novo programa.
Quando o programa é finalizado, o Shell original continua ou a ler o próximo comando do terminal, ou a executar o próximo comando do script.
Shell pai
Shell pai	
Novo programa
Shell filho
	novo 	
VARÁVEIS;
Uma variável é um nome que você dá a uma porção de informação especifica.
Cada variável possui um valor, que é o conteúdo ou informação que você atribui a ela.
Nomes de variáveis do Shell começam por uma letra ou sublinhando e podem conter qualquer número de letras, dígitos ou sublinhados. 
A atribuição de valores a variáveis é feita escrevendo-se o nome da variável seguindo imediatamente por um caractere = e o novo valor, sem espaço entre eles. Valores de variáveis no Shell são extraídos prefixando-se o nome da variável por um caractere $.
COMANDO ECHO;
O comando echo para imprimir o valor.
Argumento –n, que faria o echo omitir a inclusão de uma nova linha ao final da string impressa.
Produzir saída do Shell scripts.
Imprime cada argumento na saída padrão, separados por um espaço simples e terminados por uma nova linha. Ele interpreta seqüência de escape.
Opção –n, quando a opção é usada, echo omite a nova linha final.
Seqüências de escape são uma forma de representar em programas caracteres difíceis de ver ou de digitar.
SEQUENCIA DE ESCAPE DE ECHO;
/b o backspace.
/n nova linha.
PRINTF;
A principal diferença que você imediatamente notara é que, diferentemente de echo , printf não inclui uma nova linha automaticamente.
ESPECIFICADORES;
 Dois dos principais especificadores de formato são %s para strings e %d para inteiros decimais.
REDIRECIONAMENTO DE E/S BÁSICO;
Esses lugares são chamados pelos nomes entradas (teclado) padrão, saída (Shell) padrão e erro (Shell) padrão. Quando não especificado de outra forma, entrada padrão, saída padrão e erro padrão são o terminal.
Redirecionamento de E/S é o processo através do qual você, interativamente no terminal, ou a partir de um Shell script, troca os lugares de onde a entrada vem ou para onde a saída vai.
REDIRECIONAMENTO E PIPELINES;
Troque a entrada padrão com <.
Troque a saída padrão com >.
Adicione ao final de um arquivo com >>.
CRIE PIPELINES COM |;
Use o programa1|programa2 para fazer com que a saída padrão de programa1 se torne a entrada padrão de programa2.
/DEV/NULL;
O primeiro arquivo, /dev/null, é o conhecido como balde de dados. Dados enviados para ele são descartados pelo sistema.
PROCURA DE COMANDOS BASICOS;
O Shell procura por comandos ao longo do caminho de procura, $PATH. Trata-se de uma lista de diretórios separados por dois anos pontos em que se encontram comandos.
O termo Bin para diretórios que contem executáveis é uma abreviação para binário.
ARGUEMENTOS DE SHELL SCRIPTS (SÃO VARIAVEIS QUE O SISTEMA CRIA);
Os chamados parâmetros posicionais representam argumentos de linha de comando dos Shell scripts. Argumentos individuais são nomeados por números inteiros. 
A linha que começa com # finduser--- é um comentário. O Shell ignora tudo de # até o fim da linha ( de forma coincidente; a linha especial com #!.
PESQUISANDO TEXTOS;
GREP, Imprimir linhas de texto que casem com um ou mais padrões.
LIVRO 2;
Como o Shell é sobretudo uma linguagem para processamento de strings, há muitas coisas que você pode fazer com valores strings em variáveis do Shell. ( Strings é uma seqüência de caracteres).
VARIÁVEIS E ARITMÉTICA;
Variáveis do Shell são como variáveis em qualquer linguagem de programação convencional. Elas armazenam valores para que você utilize quando precisar.
ENV;
Imprime os nomes e valores de todas as variáveis no ambiente.
UNSET;
Remover variáveis e funções do Shell corrente.
PARAMETROS POSICIONAIS (Argumentos);
Os chamados parâmetros posicionais constituem a linha de comando de Shell scripts. Também formam argumentos de função dentro de scripts do Shell.
Variáveis especiais fornecem acesso ao número total de argumentos que foram passados e a todos os argumentos juntos.
$#;
Fornece o numero total de argumentos passados para o Shell script ou função.
$*;
Representa todos os argumentos de linha de comando em uma vez só.
“$*”;
Representa todos os argumentos de linha de comando em uma única string.
O comando shift pula os parâmetros posicionais da lista, começando pela esquerda.
VARIAVEIS ESPECIAIS;
#;
Número de argumentos dado ao processo corrente.
@;
Argumentos de linda de comando para o processo corrente.
*;
Argumentos de linha de comando para o processo corrente.
-;
Opção dadas ao Shell na invocação.
?;
Codigo de saída do comando anterior.
$;
Identificador do processo do Shell.
0;
O nome do programa relativo ao Shell.
!;
Identificador do ultimo processo executado em segundo plano.
HOME;
Diretório do usuário (login).
PATH;
Caminho de procura por comandos.
PPID;
Identificador do processo pai.
PWD;
Diretório de trabalho corrente.
VALORES DE ESTADOS DE SAÍDA;
Por convenção, um estado de saída 0 indica sucesso, ou seja, que o programa foi executado e não encontrou nenhum problema. Qualquer outro estado de saída indica falha. A variável embutida ? (acessada com $?) contém o estado de saída do ultimo programa que o Shell executou.
0;
Comando encerrou com sucesso.
>0;
Falha durante ou expansão de palavra.
1-125;
Comando encerrou sem sucesso.
126;
Comando encontrado, mas o arquivo não era executável.
127;
Comando não encontrado.
>128;
Comando encerrou (morreu) devido ao recebimento de um sinal.
Quando o operador && separa dois comandos, o Shell executa o primeiro. Se ele termina com sucesso, Shell executa o segundo. Se o segundo também termina com sucesso, a execução do grupo inteiro é considerado um sucesso.
Em contraste, o operador || é usado quando você quer testar se uma ou outra das condições é verdadeira.

Outros materiais