Shell Script
Objetivos da aulaExplicar o que é Shell e Script e para que serve.
Comandos básicos de manipulação de arquivos usando Bash.
Requisitos Básicos
Linux instalado, com terminal Bash.
Definições básicas
Shell em computação é uma interface de usuário para acessar os serviços de um sistema operacional.
Script é uma linguagem de programação que executa no sistema em tempo de execução, muito utilizado para automação.
Comandos
Mudar diretório: cd é um acrônimo da expressão inglesa change directory.
cd /: abre o diretório raiz do sistema.
cd ~: Abre o diretório do usuário corrente. O usuário logado naquele instante.
cd ..: Volta diretório.
Listar conteúdo: ls é um comando para listar conteúdos.
ls -l: Lista o conteúdo em coluna detalhada.
ls -a: Lista o conteúdo até os arquivos ocultos.
ls -s: Lista o conteúdo com tamanho alocado de cada arquivo, em bloco.
Criar e atualizar o conteúdo: touch é usado para criar arquivos vazios ou alterar data e hora do arquivo.
touch arquivo1.txt arquivo2.txt arquivo2.txt: Cria múltiplos arquivos.
touch -a file_name.txt: Altera hora de acesso do arquivo.
touch -m file_name.txt: Altera hora da modificação do arquivo.
touch -c file_name.txt: Altera hora de acesso sem criar um novo arquivo.
touch -t 202012081047.30 file.txt: Definir hora específica de acesso e modificação usando touch. CCYYMMDDhhmm.ss, onde:
- CC - Os dois primeiros dígitos do ano.
- YY - Os dois dígitos subsequentes do ano.
- MM - O mês.
- DD - O dia.
- hh - A hora.
- mm - O minuto.
- ss - O segundo.
Visualizar conteúdo do arquivo: cat concatenate(concatenar) é utilizado para concatenar (criar, unir e exibir arquivos). Colocar o resultado em um outro arquivo com o comando cat arq1 > arq_final. Redirecionador de saída é o símbolo de maior que ">". Para parar a rolagem da tela e permitir a navegação use o pipe "|" seguido do comando more ou do comando less.
Exercícios
1) cd é um acrônimo de:
- (x)change directory
- ( )change diractory
- ( )directory change
- ( )directory command
- ( )command directory
2) Sobre o comando ls -s, podemos afirmar:
- (x) Lista o conteúdo com tamanho alocado de cada arquivo, em bloco.
- ( ) Lista o conteúdo com tamanho alocado de daca arquivo.
3) Qual comando está certo para alterar hora da modificação?
- ( ) touch -u file.txt
- ( ) touch -s file.txt
- (x) touch -m file.txt
Mover arquivos: mv é um comando para mover e renomear arquivos e diretórios.
mv -i: Confirme antes de substituir.
mv -n: Sem substituição.
mv -b: Substituindo pelo backup.
mv -u: Substitua se o arquivo de destino for antigo ou não existir.
Copiar arquivos: cp permite copiar arquivos ou diretórios para outro local. Sem confirmação de existência ou não, exceto se usar a flag -i (interativa). Nenhuma saída será exibida, exceto se usar o flag opção -v (verbose).
cp -l: criar hard links em vez de copiar os arquivos.
cp -s: criar links simbólicos em vez de copiar arquivos.
cp -u: copiar apenas quando o arquivo de origem for mais novo do que o arquivo de destino ou quando o arquivo de destino não existir.
Criando diretórios: mkdir é o comando utilizado para criar diretório.
mkdir digital_innovation_one: Cria uma pasta de nome digital_innovation_one.
Remover arquivos: rm é o comando utilizado para remover arquivos e diretórios.
rm file_name: Remove o arquivo.
rm -f file_name: Remove o arquivo sem fazer perguntas.
rm -r diretorio: Remove um diretório e seu conteúdo.
Procurar por arquivos: find é o comando utilizado para procurar arquivos.
find .: Procura no diretório atual em em todas as pastas e subpastas do diretório atual.
find ./ -type d -name "novo": Procura no diretório atual, por tipo diretório e nome novo.
find ./ -type d -name "novo*": Procura no diretório atual, por tipo diretório e nome que começa com a palavra novo.
find ./ -type f -name "novo": Procura no diretório atual, por tipo file (arquivo) e nome novo.
find ./ -type f -name ".*": Procura no diretório atual, por tipo file (arquivo) e qualquer arquivo, incluindo arquivos ocultos.
Comparar diferença entre arquivos: diff faz comparação entre arquivos e também entre diretórios.
dif arq1.txt arq.txt: Exibe a diferença entre os dois arquivos.
Remover diretório: rmdir remove diretório.
rmdir: Remove um diretório vazio.
rm -rf: Remove um diretorio não vazio sem perguntas.
Trabalhando com variáveis de ambiente: env
PS1: Prompt da linha de comandos.
HOME: Diretório "/home" de um usuário.
PATH: Lista de diretórios vasculhados quando um comando é executado.
mkdir frutas: Cria uma pasta de nome frutas.
limao=frutas: Cria uma variável de nome limão que na realidade é frutas.
echo $limao: Exibe o nome da variável frutas.
export limao: Cria uma variável de ambiente de nome limao.
env: Exibe todas as variáveis de ambiente.
cd $limao

Comentários
Postar um comentário
Deixe seu comentário: