Baixe o app para aproveitar ainda mais
Esta é uma pré-visualização de arquivo. Entre para ver o arquivo original
Capбtulo 5 - Comandos гteis de linha de comando/5. Video Aula - BASH lesson 3 - grep and cut commands.avi Capбtulo 5 - Comandos гteis de linha de comando/4. Laboratвrios Extras.docx Laboratórios Extras Atenção: Para seguir os exemplos abaixo depois, abra um shell e crie um diretório chamado "shell" em seu home e nele acrescente os arquivos script1,script2,script3. Observação: O diretório papel/ inexiste. 1) Testem o seguinte comando: $ ls shell/ papel/ > log_ls.txt O comando ls listará os diretórios shell/ e papel/ e redirecionará a saída para o arquivo log_ls.txt. Durante a execução do comando, será exibido a seguinte mensagem: "ls: papel/: Arquivo ou diretório não encontrado" (Saída de erro), como usamos o ">" ao invés de "2>" (para erro), o que ficou no arquivo foi só a saída certa. 2) Para ver o conteúdo do log_ls.txt: $ cat log_ls.txt A saída de erro não apareceu nele certo? 3) Para acrescentar a saída com erros, mude o comando para: $ ls papel/ 2>> log_ls.txt 4) Execute: $ ls shell/ | sort | tee listagem.txt Este comando lista o conteúdo do diretório "shell" canalizando sua saída para o comando "sort", que ordena os arquivos por ordem alfabética, canalizando sua saída para o comando "tee" que canaliza toda a saída para o arquivo "listagem.txt". 5) Vamos testar o uso do << Este redirecionamento serve principalmente para marcar o fim de exibição de um bloco. Este é especialmente usado em conjunto com o comando cat, mas também tem outras aplicações. 6) Execute: $ cat << final >> teste.txt estou realizando um teste final Por que o shell apenas foi liberado depois que digitamos a palavra final? Porque este comando irá concatenar o conteúdo digitado e coloca-lo dentro de teste.txt até que a palavra final seja digitada. 7) Visualize: $ cat teste.txt estou realizando um teste 8) Como eu poderia listar apenas os arquivos que começam com a letra s? $ ls | grep ^s 9) E para listar todos arquivos terminados com a letra a? $ ls | grep a$ 10) Então: ^ indica início $ indica fim Capбtulo 5 - Comandos гteis de linha de comando/2. Dicas LPI - Prova 101 - Tвpico 103-Comandos GNU e Unix.docx Prova 101 - Tópico 103: Comandos GNU e Unix Sub-Tópico: 103,1 Trabalhando na linha de comando Peso 4 Descrição: Os candidatos devem ser capazes de interagir com as shells e comandos usando a linha de comando. O objetivo é utilizar a shell: bash. Principais Áreas de Conhecimento: Usar comandos de shell e uma seqüência de linha de comando para executar tarefas básicas na linha de comando; Usar e modificar o ambiente shell, incluindo definição, referência e exportar variáveis de ambiente; Usar e editar o histórico de comandos; Os comandos invoke, dentro e fora do caminho definido. Prova 101 1) Como eu poderia fazer para listar somente os diretórios usando o comando ls?? R: ls -d ou ls -l | grep ^d O coringa ^ representa início de linha. Tendo em vista que o primeiro caracter apresentado na saída do comando ls -l é a identificação do elemento (se é um link, um arquivo ou um diretório), podemos filtrar todas as linhas cujo primeiro caracter seja d. 2) Qual comando eu poderia usar para limpar um arquivo chamado texto.txt sem precisar abrir um editor para fazê-lo? R: echo "" > texto.txt O redirecionador > permite que informações sejam concatenadas em um arquivo, sobrescrevendo-o. Neste caso estamos colocando "" dentro do arquivo, ou seja, nada. Ao usar >> o efeito não seria o mesmo, pois esse redirecionador apenas acrecenta o conteúdo no arquivo sem sobrescrevê-lo. 3) Qual comando permite concatenar os dados de um arquivo na tela porém na ordem inversa de linhas? R: tac O comando tac faz a mesma coisa que o cat porém mostrando a primeira linha como sendo última e assim sucessivamente. 4) Ao usar o comando tail em um arquivo de 20 linhas, quantas linhas aparecerão na tela? R: 10 Se usarmos o comando tail sem parâmetros, o padrão é mostrar as últimas 10 linhas do arquivo especificado. Esse comando é muito utilizado para o monitoramento de logs, onde neste caso usamos junto ao tail o parâmetro -f que atualiza os dados na tela assim que é gerada uma nova entrada no log. ex: tail -f /var/log/messages 5) Como eu faria para limpar os histórico? R: history -c Os comandos que serão cobrados são: bash echo env exec export pwd set unset man uname history Capбtulo 5 - Comandos гteis de linha de comando/6. Slide.pdf Linux Essentials – 450 – Slide - 1 www.4linux.com.br Capítulo 5 – Comandos úteis de Capítulo 5 – Comandos úteis de linha de comandolinha de comando Agora vamos aprender alguns comandos que realmente fazem grande diferença em nosso dia-a-dia. $ cut $ sort $ tail $ echo $ grep Linux Essentials – 450 – Slide - 2 www.4linux.com.br ObjetivosObjetivos Conhecer alguns comandos importantes para dominar a “tela preta”; Linux Essentials – 450 – Slide - 3 www.4linux.com.br Comandos úteis de linha de Comandos úteis de linha de comandocomando Entrada e saida de dados Stdin Stdout Stderr > >> | Linux Essentials – 450 – Slide - 4 www.4linux.com.br Comandos úteis de linha de Comandos úteis de linha de comandocomando Entrada e saida de dados Existem muitos outros tipos de redirecionamento, vamos aprender mais alguns no treinamento: 451 da formação 4Linux Linux Essentials – 450 – Slide - 5 www.4linux.com.br Comandos úteis de linha de Comandos úteis de linha de comandocomando Comandos de paginação e controle de fuxo cat tac more less Linux Essentials – 450 – Slide - 6 www.4linux.com.br Comandos úteis de linha de Comandos úteis de linha de comandocomando Proporções específcas head tail Linux Essentials – 450 – Slide - 7 www.4linux.com.br Comandos úteis de linha de Comandos úteis de linha de comandocomando Eu quero ver o meio!!! Como faço para ver o meio de um arquivo??? Linux Essentials – 450 – Slide - 8 www.4linux.com.br Comandos úteis de linha de Comandos úteis de linha de comandocomando Contagem wc nl Linux Essentials – 450 – Slide - 9 www.4linux.com.br Comandos úteis de linha de Comandos úteis de linha de comandocomando Classifcação sort Linux Essentials – 450 – Slide - 10 www.4linux.com.br Comandos úteis de linha de Comandos úteis de linha de comandocomando Comando echo echo 1001 utilidades =D Linux Essentials – 450 – Slide - 11 www.4linux.com.br Comandos úteis de linha de Comandos úteis de linha de comandocomando Filtrando saídas grep AFTER BEFORE -i -v Linux Essentials – 450 – Slide - 12 www.4linux.com.br Comandos úteis de linha de Comandos úteis de linha de comandocomando Diversos greps ... Para o nosso dia-a-dia alguns outros “greps” podem ser muito úteis: Pgrep → Process Grep ngrep → Network Grep egrep → Grep para expressões regulares $ man regex Linux Essentials – 450 – Slide - 13 www.4linux.com.br Comandos úteis de linha de Comandos úteis de linha de comandocomando Comando de cortar cut “cut -d: -f1 /etc/passwd” Linux Essentials – 450 – Slide - 14 www.4linux.com.br Comandos úteis de linha de Comandos úteis de linha de comandocomando AWK O comando “awk” pode ser interpretado como uma tesoura mais afada que o “cut”, porém, necessita de mais atenção para ser usada. Linux Essentials – 450 – Slide - 15 www.4linux.com.br Comandos úteis de linha de Comandos úteis de linha de comandocomando Determinando objetos fle Linux Essentials – 450 – Slide - 16 www.4linux.com.br Comandos úteis de linha de Comandos úteis de linha de comandocomando Administrando espaço du df free Linux Essentials – 450 – Slide - 17 www.4linux.com.br Comandos úteis de linha de Comandos úteis de linha de comandocomando Administrando a data date Quero saber a hora em nanosegundos!!!!!!! E também quero saber a data em segundos contados a partir de 1970...... Linux Essentials – 450 – Slide - 18 www.4linux.com.br Comandos úteis de linha de Comandos úteis de linha de comandocomando Mais comandos uptime uname dif Linux Essentials – 450 – Slide - 19 www.4linux.com.br Comandos úteis de linha de Comandos úteis de linha de comandocomando Localizando no sistema fnd locate Linux Essentials – 450 – Slide - 20 www.4linux.com.br Comandos úteis de linha de Comandos úteis de linha de comandocomando Poderosa ferramenta de busca Usando o parâmetro “-perm” do comando “fnd”, é possível procurar alguma coisa pela sua permissão, o que facilita encontrar binários com má atribuição de “SUID bit”. Linux Essentials – 450 – Slide - 21 www.4linux.com.br Comandos úteis de linha de Comandos úteis de linha de comandocomando Mais e mais comandos awk Linguagem de programação!!! awk -F ":" '{print $1,",",$2}' /etc/passwd awk -F ":" '{ print "username: " $1 "\t\tuid:" $3 }' /etc/passwd Linux Essentials – 450 – Slide - 22 www.4linux.com.br Comandos úteis de linha de Comandos úteis de linha de comandocomando Logger logger -p local0.notice -t HOSTIDM -f /dev/idmc Linux Essentials – 450 – Slide - 23 www.4linux.com.br Comandos úteis de linha de Comandos úteis de linha de comandocomando Sed cat /etc/passwd | head -n1 | sed 's/root/beth/' Editor para saidas de texto. Linux Essentials – 450 – Slide - 24 www.4linux.com.br Comandos úteis de linha de Comandos úteis de linha de comandocomando Seq Contador seq 1 20 Linux Essentials – 450 – Slide - 25 www.4linux.com.br Comandos úteis de linha de Comandos úteis de linha de comandocomando Sleep Aguarda por um tempo. sleep 3 Linux Essentials – 450 – Slide - 26 www.4linux.com.br Comandos úteis de linha de Comandos úteis de linha de comandocomando Expand && Unexpand Conversão de espaços em “tabs” e vice-versa Linux Essentials – 450 – Slide - 27 www.4linux.com.br Comandos úteis de linha de Comandos úteis de linha de comandocomando Join cat /etc/passwd | awk -F: '{print $1}' | nl > a cat /etc/passwd | awk -F: '{print $7}' | nl > b Join a b Linux Essentials – 450 – Slide - 28 www.4linux.com.br Comandos úteis de linha de Comandos úteis de linha de comandocomando Number Line $ nl /etc/passwd Linux Essentials – 450 – Slide - 29 www.4linux.com.br Comandos úteis de linha de Comandos úteis de linha de comandocomando paste cat /etc/passwd | cut -d: -f 1 > a cat /etc/passwd | cut -d: -f2 > b paste a b Linux Essentials – 450 – Slide - 30 www.4linux.com.br Comandos úteis de linha de Comandos úteis de linha de comandocomando Split split -l 10 passwd Linux Essentials – 450 – Slide - 31 www.4linux.com.br Comandos úteis de linha de Comandos úteis de linha de comandocomando Localizando no sistema fnd locate Linux Essentials – 450 – Slide - 32 www.4linux.com.br Comandos úteis de linha de Comandos úteis de linha de comandocomando TR cat /etc/passwd | tr -d root,aluno,new Linux Essentials – 450 – Slide - 33 www.4linux.com.br Comandos úteis de linha de Comandos úteis de linha de comandocomando Uniq Unifca linhas em um arquivo Linux Essentials – 450 – Slide - 34 www.4linux.com.br Comandos úteis de linha de Comandos úteis de linha de comandocomando Fmt Formatador cat /etc/passwd | fmt -w 60 Número de colunas Linux Essentials – 450 – Slide - 35 www.4linux.com.br Comandos úteis de linha de Comandos úteis de linha de comandocomando Hexdump e Od $ hexdump passwd Converte o arquivo para Hexa. =D # od passwd Converte arquivo para Octal Linux Essentials – 450 – Slide - 36 www.4linux.com.br Comandos úteis de linha de Comandos úteis de linha de comandocomando xargs > teste^ > teste fnd -iname "teste^" | xargs rm Linux Essentials – 450 – Slide - 37 www.4linux.com.br Exercícios:Exercícios: Linux Essentials – 450 – Slide - 38 www.4linux.com.br Respostas dos ExercíciosRespostas dos Exercícios 1. “locate” trabalha com uma base de informações e o “fnd” não. O Find “sai varrendo” todo sistema. 2. Mostrar o conteúdo de um arquivo inverso. 3. “echo” - ecoar mensagens na tela. 4. “du” verifca espaço de um objeto em disco, e “df” mostra espaços relacionados a partições. 5. Medir tempo de execução. Linux Essentials – 450 – Slide - 39 www.4linux.com.br Respostas do LaboratórioRespostas do Laboratório 1. cut -d: -f1,6 /etc/passwd 2. ls -Shlr S → sort r → ordem crescente Linux Essentials – 450 – Slide - 40 www.4linux.com.br ConclusãoConclusão É muito importante visualizar o conteúdo de um arquivo, portanto, aprendemos como podemos fazer isso de maneira simples e rápida. Vimos, também, comandos que permitem selecionar o conteúdo de forma mais precisa. No próximo capítulo, iremos estudar como buscar a documentação dos comandos e programas no sistema. Slide 1 Slide 2 Slide 3 Slide 4 Slide 5 Slide 6 Slide 7 Slide 8 Slide 9 Slide 10 Slide 11 Slide 12 Slide 13 Slide 14 Slide 15 Slide 16 Slide 17 Slide 18 Slide 19 Slide 20 Slide 21 Slide 22 Slide 23 Slide 24 Slide 25 Slide 26 Slide 27 Slide 28 Slide 29 Slide 30 Slide 31 Slide 32 Slide 33 Slide 34 Slide 35 Slide 36 Slide 37 Slide 38 Slide 39 Slide 40 Capбtulo 5 - Comandos гteis de linha de comando/1. Conteгdo complementar/Filtros (Interessante).txt Filtros (Interessante) http://www.dellapena.hpg.com.br/so_unix.htm#42 Capбtulo 5 - Comandos гteis de linha de comando/1. Conteгdo complementar/Trabalhando na LInha de Comando.pdf Trabalhando na linha de comando www.4linux.com.br - 2 Sumário Capítulo 1 Trabalhando na linha de comando ............................................................................................ 3 1.1. Objetivos......................................................................................................................... 3 1.2. Mãos a obra.....................................................................................................................4 Capítulo 2 Gerenciando ............................................................................................................................ 11 2.1. Objetivos....................................................................................................................... 11 2.2 Troubleshooting............................................................................................................. 12 Índice de tabelas Índice de Figuras www.4linux.com.br Capítulo 1 Trabalhando na linha de comando - 3 Capítulo 1 Trabalhando na linha de comando 1.1. Objetivos • Usar comandos de shell; • Sequencia de linha de comando para executar tarefas básicas; • Usar e editar o histórico de comandos; • Os comandos invoke dentro e fora do caminho defnido. www.4linux.com.br Capítulo 1 Trabalhando na linha de comando - 4 1.2. Mãos a obra O ambiente em modo texto em distribuições GNU/Linux é conhecido com Shell, e é o local onde os comandos digitados pelos usuários são interpretados. É possível confgurar esse ambiente automatizando pequenas tarefas do dia a dia, e ainda fazer udo de comandos internos que o próprio ambiente nos trás. Mas afnal o que é um shell? O shell é um programa que permite ao usuário interagir com o sistema operacional através de comandos digitados no teclado. No MS-DOS o shell era o command.com, que permitia executar alguns comandos como cd, dir, etc. O shell mais conhecido no mundo GNU/Linux é o bash, o padrão para novos usuários quando são criados no sistema. É possível verifcar qual o seu shell atual, através do comando fnger ou da variável SHELL. Vamos a pratica: $ fnger aluno | grep Shell $ echo $SHELL www.4linux.com.br Capítulo 1 Trabalhando na linha de comando - 5 Em nosso exemplo o usuário aluno esta utilizando o shell bash, mas é possível ver a lista de outros shells exibindo o conteúdo do arquivo /etc/shells: $ cat /etc/shells O bash traz muitas funcionalidades como comandos internos, histórico de comandos, autocompletar, variáveis de ambiente, etc. Para você exibir quais comandos são internos use help como no exemplo abaixo: $ help www.4linux.com.br Capítulo 1 Trabalhando na linha de comando - 6 Histórico de comandos Uma das funções mais uteis no dia a dia é trabalhar com comandos do histórico. Você pode acessar esses comandos usando as teclas de navegação para cima e para baixo, ou através do comando history. Vamos a prática: $ history A lista é uma ordem de comandos que estão guardados no histórico. Para executar um comando da lista use exclamação + numero do comando. Exemplo: $ !4 Para limpar a lista de comando use o comando history com a fag -c: $ history -c Variáveis No GNU/Linux as variáveis são muito usadas na criação de shell scripts, mas também podem ser declarada diretamente no terminal, e assim gerenciadas pelo shell. Mas o que é variável? Variável pode ser defnida como um objeto, ou uma posição localizada na memória, que guarda um valor ou expressão. Vamos ver na prática como declarar uma variavel. www.4linux.com.br Capítulo 1 Trabalhando na linha de comando - 7 $ a=10 Veja que em nosso exemplo a variável “a” foi declarada com o valor 10. Para exibir o conteúdo da variável use o comado echo, cifrão e o nome da variável. $ echo $a É possível somar o conteúdo de 2 ou mais variáveis usando alguns comandos, vamos a prática: Declare um conteúdo para 2 variáveis: $ b=20 $ c=30 Para somar use o comando expr ou o próprio echo. Exemplo: $ expr $b + $c $ echo $(($b+$c)) www.4linux.com.br Capítulo 1 Trabalhando na linha de comando - 8 Variáveis locais x globais Quando você declara uma variável ela pode ser considerada pelo sistema como local ou global. A diferença está na maneira de declarar a variável. Exemplo: Variável local $ curso=4linux Variável global $ export curso=4linux Veja que o comando export foi usado antes de declarar a variável. Para listar os tipos de variáveis use os comandos env e set: Para exibir variáveis locais use o comando set $ set Para exibir variáveis globais use o comando env $ env Para deletar uma variável da memória use o comando unset www.4linux.com.br Capítulo 1 Trabalhando na linha de comando - 9 $ unset curso O shell guarda informações do ambiente dentro de algumas variáveis, chamadas de variáveis de ambiente. Veja a descrição abaixo: HOME – Exibe o diretório do usuário logado; SHELL – Exibe qual shell está sendo usado; TERM – Exibe o tipo de terminal que está sendo usado; USER – Exibe o nome do usuário logado; PATH – Exibe quais diretórios pesquisar e a ordem na qual eles são pesquisados para encontrar um determinado comando; MAIL – Exibe o local onde fcam armazenados os emails do usuário logado; OSTYPE – Exibe o tipo de sistema operacional em uso; PWD – Exibe a localização do diretório atual; OLDPWD – Exibe a localização do diretório anterior; PS1 – Exibe a aparência do prompt, como o nome de usuário, maquina e diretório atual; Não esqueça que os nome das variáveis de ambiente são apresentadas em maiúsculas! $ echo $PS1 www.4linux.com.br Capítulo 1 Trabalhando na linha de comando - 10 Outros comandos interessantes usado no shell O comando uname exibe informações do sistema como a versão do kernel, processador, sistema operacional, entre outros. Veja a descrição das opções usadas com o comando uname: -i – Tipo de processador. -m – Arquitetura da maquina. -n – Nome da maquina na rede. -p – Processador. -o – Sistema operacional. -r – Versão do código fonte do kernel. -s – Nome do kernel. -v – Versão de compilação do kernel. exec Alterna de um shell para outro, exemplo do bash para sh $ exec sh man Exibe o manual de um comando. Exemplo de como trazer o manual do comando ls $ man ls www.4linux.com.br Capítulo 1 Trabalhando na linha de comando - 11 Capítulo 2 Gerenciando 2.1. Objetivos • Trobleshooting: Usar e modifcar o ambiente shell. www.4linux.com.br Capítulo 2 Gerenciando - 12 2.2 Troubleshooting Como posso personalizar meu ambiente shell? Cada usuário pode personalizar seu ambiente através do shell, declarando variáveis, apelidos para comandos (alias) e ainda executar comandos ou scripts no login e logout. Veja a lista de arquivos que podem ser personalizados. /etc/profle – Este arquivo contém comandos que são executados para todos os usuários do sistema no momento do login (somente o usuário pode editar); ~/.bash_profle – Executado por shells que usam autenticação (nome e senha). Para root o arquivo é o .profle; ~/.bashrc – Executado por shells que não requerem autenticação (seção de terminal no X); ~/.bash_logout – É lido e executado toda vez que saímos de um shell; ~/.bash_history – Lista dos comandos digitados pelos usuários. Como exemplo pratico vamos personalizar o login de um usuário para exibir um calendário, alem de declarar uma variável e criar um alias para um comando. www.4linux.com.br Capítulo 2 Gerenciando - 13 Com um usuário comum faça login no sistema e abra o arquivo .bashrc $ vim .bashrc Na linha 4 adicione um comando, linha 5 um alias e na linha 6 uma variável www.4linux.com.br Capítulo 2 Gerenciando - 14 Faça logout com o usuário e ao se logar teste o alias e a variável. $ ll $ echo $curso www.4linux.com.br Capítulo 1 Trabalhando na linha de comando 1.1. Objetivos 1.2. Mãos a obra Capítulo 2 Gerenciando 2.1. Objetivos 2.2 Troubleshooting
Compartilhar