Aula - Comandos Linux - Parte 2

278 visualizações

Publicada em

Aula - Comandos Linux - Parte 2

Publicada em: Educação
0 comentários
0 gostaram
Estatísticas
Notas
  • Seja o primeiro a comentar

  • Seja a primeira pessoa a gostar disto

Sem downloads
Visualizações
Visualizações totais
278
No SlideShare
0
A partir de incorporações
0
Número de incorporações
2
Ações
Compartilhamentos
0
Downloads
8
Comentários
0
Gostaram
0
Incorporações 0
Nenhuma incorporação

Nenhuma nota no slide

Aula - Comandos Linux - Parte 2

  1. 1. Objetivos ● Redirecionamento de entrada e saída (continuação); ● Links simbólicos x hard links; ● Documentação no GNU/Linux; ● Comandos de busca no sistema de arquivos; ● Comandos para manipulação de arquivos de texto; ● Introdução a metacaracteres;
  2. 2. Introdução ao Linux
  3. 3. Introdução ao Linux Pipe # ls / | more # ls / | less # ls / | xargs -n 2 # ls / | xargs -n 3 # echo “linux:macos:freebsd:openbsd” > /tmp/teste.txt # cat /tmp/teste.txt | xargs -d: -n 2
  4. 4. Introdução ao Linux Pipe # echo 1 2 3 4 | xargs -n 2 # find /tmp -name "*.tmp" | xargs rm # find /tmp -name "*.tmp" -print0 | xargs -0 rm # ls / | xargs -n 4 > /tmp/teste3.txt # cat /tmp/teste3.txt
  5. 5. Introdução ao Linux Pipe # ls / | tee /tmp/teste4.txt # cat /tmp/teste4.txt # echo “egeekacademy” | tr [a-z] [A-Z]
  6. 6. Introdução ao Linux Pipe # cat /etc/passwd | grep root # cat /etc/passwd | grep -v root # grep -v root /etc/passwd | tee /root/root.txt
  7. 7. Introdução ao Linux Links simbólicos (sym links) ● Pode apontar para um arquivo ou diretório em qualquer lugar: ● Funciona em vários sistemas de arquivos; ● Funciona para arquivos ou diretórios que estão em outras partições ou discos; ● Funciona em sistemas de arquivos remotos: NFS; ● Ocupa pouco espaço; ● Não funciona se o arquivo original for removido (link quebrado);
  8. 8. Introdução ao Linux Links simbólicos (sym links) # cp /etc/passwd /tmp # cd /tmp # ln -s passwd link.simbolico # cp passwd passwd2 # stat passwd # stat link.simbolico # ls -i passwd # ls -i link.simbolico
  9. 9. Introdução ao Linux Hard Link ● Não é um link; ● Aponta para o mesmo endereço físico (conhecido como inode); ● Continua funcionando caso o “arquivo original” seja removido; ● Possui as seguintes limitações: – o “arquivo original” e o hard link devem estar localizados no mesmo sistema de arquivos; – Não pode apontar para diretórios;
  10. 10. Introdução ao Linux Hard Link # cd /tmp # ln passwd2 link.hard # stat passwd2 # stat link.hard # ls -i passwd2 # ls -i link.hard
  11. 11. Introdução ao Linux
  12. 12. Introdução ao Linux Seções do man: ● man 1 – Programas e executáveis disponíveis ao usuário; ● man 2 – Rotinas de sistema Unix e C; ● man 3 – Rotinas de bibliotecas da linguagem C; ● man 4 - Arquivos especiais (dispositivos em /dev); ● man 5 - Arquivos de configuração e convenções; ● man 6 – Games; ● man 7 – Diversos (macros textuais, por exemplo, regex); ● man 8 - Comandos administrativos; ● man 9 - Rotinas de Kernel.
  13. 13. Introdução ao Linux Comando man # man ls # man 1 passwd # man 5 passwd # man 7 regex # man -L pt_BR ls # man 7 undocumented
  14. 14. Introdução ao Linux Comando apropos / catman / whatis # apropos copy # man -k copy # catman # whatis ls
  15. 15. Introdução ao Linux Comando info / whereis / which # info ls # whereis passwd # which ls
  16. 16. Introdução ao Linux Comandos de localização # updatedb # locate passwd
  17. 17. Introdução ao Linux Comandos de localização # ls -lh /etc/passwd # find / -iname passwd # find / -perm 777 # find /root -type f -perm 777 # find / -size +10M # find / -perm 600 -exec ls -l {} ; # find / -perm 600 -print0 | xargs -0 ls -l
  18. 18. Introdução ao Linux Comandos de localização # find / -type f -empty # find / -type d -empty # find / -mtime 50 # find / -mtime +50 -mtime -100 # find / -atime 50 # find . -type f -atime -1 -exec ls -l {} ; $ find ~ -cmin -60 # find / -name "*.txt" -exec chmod -x {} ";"
  19. 19. Introdução ao Linux Comandos de localização # ls -l teste.txt # find / -perm -4000 # find / -perm 4000 # find / -maxdepth 2 -name passwd # find . -type d -empty -exec rmdir {} ;
  20. 20. Introdução ao Linux Encerrando sessão # logout # exit
  21. 21. Introdução ao Linux Desligando e reiniciando a máquina # halt # shutdown -h 10 # shutdown -c # shutdown -r 10 # shutdown -r now # reboot
  22. 22. Introdução ao Linux join $ cat hardwares.txt 1 Processador Core i7 2 Memória RAM 8GB Kingston 3 HD Seagate Sata II 500 GB $ cat precos.txt 1 R$ 1000,00 2 R$ 200,00 3 R$ 250,00 $ join hardwares.txt precos.txt > tabela.txt $ cat tabela.txt
  23. 23. Introdução ao Linux join $ cat arq1.txt 1 x1 1 2 y1 2 3 z1 3 $ cat arq2.txt 1 x2 2 2 y2 4 3 z2 6 $ join -1 1 -2 1 -o '1.2 2.3' arq1.txt arq2.txt
  24. 24. Introdução ao Linux fmt $ fmt -w 33 tabela.txt uniq $ cat frutas.txt Maçã Banana Laranja Maracujá Laranja $ cat frutas.txt | sort | uniq $ cat frutas.txt | sort | uniq -d
  25. 25. Introdução ao Linux pr Divide o arquivo para impressão. O padrão é 66 linhas por 72 caracteres de largura. $ cat frutas.txt $ cat verduras.txt $ cat -n frutas.txt | head $ nl verduras.txt | pr -m – frutas.txt | head $ cat /etc/passwd > /tmp/teste.txt $ cat /etc/passwd >> /tmp/teste.txt $ cat -n /tmp/teste.txt $ cat /tmp/teste.txt | pr -l 47 -w 72
  26. 26. Introdução ao Linux paste $ paste frutas.txt verduras.txt uniq $ sort frutas.txt | uniq | nl tr $ echo “Frase com espaços” | tr ' ' '$' $ echo “Frase com espaços” | tr ' ' 't' $ cat verduras.txt | tr ' ' 'n'
  27. 27. Introdução ao Linux dd e du # dd if=/dev/random bs=2 count=6 | base64 - > /tmp/senhas.txt # dd if=/dev/sda1 of=/dev/sdb2 # dd if=/dev/zero of=/tmp/arquivo.iso bs=1M count=10 # du -h /tmp/arquivo.iso # du -hs /home/leo
  28. 28. Introdução ao Linux split $ split -b 1MB /tmp/arquivo.iso $ ls -lh /tmp $ cat /etc/passwd > /tmp/teste1.txt $ split -l 2 /tmp/teste1.txt $ ls -lh /tmp
  29. 29. Introdução ao Linux expand e unexpand $ nano url.txt <ESTAÇO> egeeked <ESTAÇO> .com <TAB> .br $ cat url.txt $ expand -t1 url.txt $ unexpand -a1 url.txt
  30. 30. Introdução ao Linux od | hexdump | xxd $ cat arq1.txt $ od -x arq1.txt $ od -xc arq1.txt $ hexdump arq1.txt $ hexdump -C arq1.txt
  31. 31. Introdução ao Linux od | hexdump | xxd $ echo “Teste” | hexdump -v -e '/1 “%02Xn”' $ xxd arq1.txt > arq2.txt $ cat arq2.txt $ xxd -r arq2.txt $ od -t x1 -An arq1.txt | tr -d 'n'
  32. 32. Introdução ao Linux Comandos sequenciais Executar 3 comandos em sequência independente do resultado de cada um: $ Comando 1 ; Comando 2 ; Comando 3 Executar o próximo comando apenas se o anterior executar com sucesso: $ Comando 1 && Comando 2 && Comando 3 Executar o próximo comando apenas se o anterior executar sem sucesso: $ Comando 1 || Comando 2 || Comando 3
  33. 33. Introdução ao Linux Comandos sequenciais – Exemplos $ ls arquivonaoexistente ; cat /etc/issue $ ls arquivonaoexistente && cat /etc/issue $ ls arquivonaoexistente || cat /etc/issue
  34. 34. Introdução ao Linux df $ df $ df -h $ df -T $ df -Th
  35. 35. Introdução ao Linux ls $ cat /etc/ld.so.conf $ ls -dl `cat /etc/ld.so.conf` $ ls -dl $(cat /etc/ld.so.conf) $ ls --color $ ls -a $ ls /dev/sd*
  36. 36. Introdução ao Linux ls $ ls /etc/host* $ ls /dev/s?? $ ls /dev/sd[abc] $ ls /dev/sda[!01]
  37. 37. Introdução ao Linux diff Arquivo Teste1.java 1.public class Teste1 { 2. 3. public static void main(String args[]) { 4. 5. System.out.println("Hello World!"); 6. 7. } 8. 9.}
  38. 38. Introdução ao Linux diff Arquivo Teste2.java 1.public class Teste2 { 2. 3. public static void main(String args[]) { 4. 5. System.out.println("Alo Mundo!"); 6. 7. } 8. 9.}
  39. 39. Introdução ao Linux diff $ diff Teste1.java Teste2.java 1c1 < public class Teste1 { --- > public class Teste2 { 5c5 < System.out.println("Hello World!"); --- > System.out.println("Alo Mundo!");
  40. 40. Introdução ao Linux sed # echo "O Windows é um sistema operacional muito seguro. O Windows é um sistema operacional multitarefa" | sed 's/Windows/Linux/' # echo "O Windows é um sistema operacional muito seguro. O Windows é um sistema operacional multitarefa" | sed 's/Windows/Linux/g'

×