SlideShare a Scribd company logo
1 of 16
Comandos básicos Linux
cd / (diretório Raiz
pwd (mostra o diretório em que o usuário esta no momento
ls (mostra o conteúdo dentro do diretório
ls –l (mostra o conteúdo dentro do diretório em formato longo
ls –lr (mostra o conteúdo dentro diretório em formato longo reverso
ls –lh (mostra o conteúdo com o tamanho em kb
ls –la (mostra os arquivos ocultos)
ls –m mostrado em sequencia separado por virgula
ls –n mostra o ID e o GID do usuário e grupo
ls –o não mostra o grupo do arquivo
ls –p mosta a listagem dos arquivos, se for diretório acrescenta a /
Misturando caracteres ls –lh /etc | less para paginar conteúdos grandes para sair do
comando letra q.
touch [nome do arquivo] para criar arquivo vazio
mkdir para criar diretórios
su – altera o terminal para modo root(administrador)
chown alterando o dono do arquivo
Ex: sudo chown root hello.sh (alterando o arquivo para o usuário root ter permissão).
chgrp alterando o grupo do arquivo
chmod (alterar permissões nos arquivos
u – usuário dono do arquivo
g – grupo
o - outros
 Leitura (Read): r
 Escrita (Write): w
 Execução (Execute): x
Ex: chmod u+rwx hello.sh (atribuindo leitura, escrita e execução para o arquivo).
Modo octal:
utilizar sequencias numerais 777 níveis mais alto para todos
777 –rwxrwxrwx total permissão para todos
000 –--------- para nenhuma permissão para todos
764 –rwxrw-r-- total para usuário, leitura e escrita para grupo, e apenas leitura para
outros.
Código Tipo de arquivo
–
Arquivo normal de dados, como texto, imagens, vídeos, programas executáveis,
arquivos zipados, etc.
d
Diretório. Os diretórios são arquivos também, porém contendo nomes de arquivos e
ponteiros para inodes do disco.
l Link simbólico (symlink) – um arquivo que aponta para um outro arquivo ou diretório
p
Pipe nomeado. Um pipe permite que dois programas em execução se comuniquem
entre si, escreverndo e lendo dados no pipe.
Código Tipo de arquivo
s
Socket. Um socket é parecido com um pipe nomeado, porém é usado em comunicações
de rede.
b
Dispositivo de bloco, o qual é um arquivo que corresponde a um dispositivo de
hardware para o qual os dados são transferidos (e lidos) em blocos de bytes.
c
Dispositivo de caractere, que é um arquivo que corresponde a um dispositivo de
hardware para o qual os dados são transferidos (e lidos) em unidades de um byte.
cat (concatena o arquivo, recomendado para arquivos pequenos que não requer
rolagem de tela.
head concatena o arquivo, mostra apenas as primeiras linhas do arquivo 5, 10, 20...
head –n concatena o arquivo e –n permite o numero de linhas a visualizada
tail –n concatena o arquivo, -n permite o numero de linhas a visualizada
Copiar arquivo: sudo cp (copy) rfv vai mostrar o conteúdo sendo copiado
sudo cp –rfv /. Nome do arquivo (. Ponto referente ao local atual)
 Comando dd
 Ele pode ser usado para clonar ou limpar discos ou partições inteiras.
 Pode ser usado para copiar dados brutos (raw) a dispositivos extraíbles como
dispositivos USB o CD ROMS.
 Ele pode ser usado para fazer uma cópia de reserva ( backup ) e restaurar o
MBR ( Master Boot Record ).
 Ele pode ser usado para criar um arquivo de tamanho especificado preenchido
com zeros binários, que pode ser usado como um arquivo de troca (memória
virtual).
Ex: dd if=/dev/zero of=/tmp/swapex bs=1M count=5o
50+0 records in
50+0 records out
52428800 bytes (52 MB) copied, 0.825745 s, 635 MB/s
Argumento Descrição
if Arquivo de entrada (Arquivo de entrada ): O arquivo de entrada a ser lido.
dd if = / dev / zero de = / tmp / swapex bs = 1M contagem = 50
O exemplo lê o arquivo /dev/zero, um arquivo especial que contém um
número ilimitado de zeros.
Argumento Descrição
of Arquivo de saída ( Arquivo de saída ): O arquivo de saída a ser gravado.
dd if = / dev / zero de = / tmp / swapex bs = 1M contagem = 50
bs Block Size ( Block Size ): O tamanho do bloco a ser usado. Por padrão, o valor
está em bytes. Use os seguintes sufixos para especificar outras
unidades: K, M, G e T para kilobytes, megabytes, gigabytes e terabytes,
respectivamente.
dd if = / dev / zero de = / tmp / swapex bs = 1M contagem = 50
O exemplo usa um tamanho de bloco de um megabyte.
count Contagem: o número de blocos a serem lidos do arquivo de entrada.
dd if = / dev / zero de = / tmp / swapex bs = 1M contagem = 50
Neste exemplo, 50 blocos são lidos.
Colnar : dd if = / dev / sda of = / dev / sdb
Mover arquivos
mv utilizado para mover arquivos, use o nome do arquivo como origem e o nome do di
retório como destino: ex: localhost : ~ / Documents $ mv people.csv Work
mv arquivo1.txt arquivo2.txt arquivo3.txt Destino (movendo vários arquivos).
Mover um arquivo dentro do mesmo diretório é uma maneira eficiente de renomeá-
lo.
EX: mv animals.txt zoo.txt
Deletar Arquivos
rm utilizado para excluir arquivos, uma vez usado excluir permanentemente.
rm –r utilizado para remover diretórios, uma vez usado excluir permanentemente.
Filtrando entradas
grep - é um filtro de texto que procura linhas em uma entrada e retornará aquelas que
correspondem a um determinado padrão.
Expressões regulares
As expressões regulares têm duas formas comuns: a forma básica e a forma
estendida. A maioria dos comandos que usam expressões regulares podem interpretar
expressões regulares básicas. No entanto, as expressões regulares estendidas não
estão disponíveis para todos os comandos e geralmente requerem uma opção de
comando para funcionar corretamente.
Caracteres básicos do Regex Significado
. Qualquer personagem
[ ] Qualquer caractere especificado
[^] Qualquer caractere que não seja o
caractere especificado
* Zero ou mais do caractere anterior
^ Se for o primeiro caractere do padrão,
o padrão deve estar no início da linha
para corresponder, caso contrário,
será tratado como um ^literal.
$ Se for o último caractere do padrão, o
padrão deve estar no final da linha
para corresponder, caso contrário,
será tratado como um $literal.
A tabela a seguir resume as expressões regulares estendidas, que devem ser usadas
com o comando egrep ou opção -Ecom o comando grep:
Caracteres básicos do Regex Significado
+ Um ou mais dos padrões acima
? O padrão é opcional
Caracteres básicos do Regex Significado
{ } Especifique correspondências
mínimas, máximas ou exatas no
padrão acima
| Alternação - o "o" lógico
( ) Usado para criar grupos
Personagens âncora
Caracteres âncora são uma das maneiras pelas quais as expressões regulares podem
ser usadas para limitar os resultados de uma pesquisa. Por exemplo, o
padrão rootaparece muitas vezes no arquivo /etc/passwd:
sysadmin @ localhost : ~ / Documentos $ grep 'root' passwd
root : x: 0: 0: root : / root : / bin / bash
operator: x: 1000: 37 :: / root :
Para evitar que o shell os interprete incorretamente como caracteres especiais de
shell, esses padrões devem ser escritos protegidos por aspas sólidas, o que significa
simplesmente colocá-los entre aspas
O primeiro caractere de âncora ^é usado para indicar que o padrão deve aparecer
no início da linha. Por exemplo, para encontrar todas as
linhas /etc/passwdque começam com, rootuse o padrão ^root. Observe que ele ^deve
ser o primeiro caractere do padrão para ser eficaz.
sysadmin @ localhost : ~ / Documentos $ grep '^ root' / etc / passwd
root : x: 0: 0: root: / root: / bin / bash
Uma das expressões mais úteis é o caractere .(ponto). Representa qualquer caractere,
exceto o caractere de nova linha. O padrão r..fencontrará qualquer linha que contenha
a letra rseguida por exatamente dois caracteres (que podem ser qualquer caractere,
exceto a nova linha) e a letra f:
sysadmin @ localhost : ~ / Documents $ grep 'r..f' red.txt
recife
roof
A linha não precisa corresponder exatamente, apenas deve conter o padrão, conforme
visto a seguir ao pesquisar r..to arquivo /etc/passwd:
sysadmin @ localhost : ~ / Documents $ grep 'r..t' / etc / passwd
root : x: 0: 0: root : / root : / bin / bash
operator: x: 1000: 37 :: / root :
Encontre um único personagem usando []
Comando grep ‘[0-9]’ profile.txt
sysadmin @ localhost : ~ / Documents $ cat profile.txt
Olá, meu nome é Joe.
Tenho 37 anos de idade.
3121991
Minha comida favorita é abacate.
Tenho 2 cachorros.
123456789101112
Para encontrar todas as linhas no arquivo profile.txtque contêm um número, use o
padrão [0123456789]ou [0-9]:
sysadmin @ localhost : ~ / Documents $ grep '[0-9]' profile.txt
Tenho 37 anos.
3121991
Tenho 2 cães.
123456789101112
Para encontrar linhas ignorando caracteres numéricos o ˆ ignora o restante da sintaxe
do comando [0-9].
grep '[^ 0-9]' profile.txt
Quando outros caracteres de expressão regular são colocados entre colchetes, eles são
tratados como caracteres literais. Por exemplo, caractere .geralmente indica qualquer
caractere. Mas se for colocado entre colchetes, simplesmente se referirá ao
personagem. (ponto). No exemplo a seguir, apenas as linhas que contêm o
caractere .serão exibidas na saída.
sysadmin @ localhost : ~ / Documents $ grep '[.]' profile.txt
Olá, meu nome é Joe .
Tenho 37 anos de idade .
Minha comida favorita é abacate .
Tenho 2 cachorros .
Indique um caractere ou padrão repetido usando o *
O caractere de expressão regular * é usado para indicar a ausência ou presença uma
ou mais vezes do caractere ou padrão que o precede. Por exemplo, e * indicaria a
ausência (zero) ou a presença, uma ou mais vezes, da letra e:
sysadmin@localhost:~/Documents$ cat red.txt
red
reef
rot
reeed
rd
rod
roof
reed
root
reel
read
sysadmin@localhost:~/Documents$ grep 're*d' red.txt
red
reeed
rd
reed
Também é possível indicar a ausência ou presença uma ou mais vezes de uma lista de
personagens usando os colchetes. O padrão [oe]*usado no exemplo a seguir refere-se
a linhas com o caractere oou caractere ausente ou presente uma ou mais vezes e:
sysadmin @ localhost : ~ / Documentos $ grep 'r [oe] * d' red.txt
red
reeed
rd
rod
reed
grep '[.a*]' red.txt
grep ‘[.a*]’ red.txt – procura todas as palavras com letra a, é possível misturar os o
comando para encontrar mais de uma letra no arquivo..
ex: grep ‘[.od*]’ red.txt
sysadmin@localhost:~/Documents$ grep '[.od*]' red.txt
red
rot
reeed
rd
rod
roof
reed
root
read
Desligar
Esse comando so é permitido com usuário root su – (senha).
Shutdown now
Shutdown +1 “sistema entrará em manutenção”
Isso impedirá que usuário logem no sistema nos últimos 5 minutos após o comando..
Configuração de rede
Ifconfig interface de rede
Iwconfig interface de rede wifi
Ping –c 4 www.google.com: determina que so sera aprendentado 4 ping na tela.
Visualização do processo
O comando ps pode ser usado para listar os processos que esta sendo utilizado no
terminal no momento.
O comando os –e visualiza todos os processos do sistema.
O gerenciamento de pacotes é um sistema pelo qual o software pode ser instalado,
atualizado, consultado ou removido de um sistema de arquivos. No Linux, existem
muitos sistemas de gerenciamento de pacote de software diferentes, mas os dois mais
populares são Debian e Red Hat. As máquinas virtuais neste curso usam Ubuntu, um
derivado do Debian.
Continue lendo
Muitos dos comandos de gerenciamento de pacotes requerem acesso administrativo,
portanto, serão precedidos pelo comando sudo. Use netlab123como senha quando
solicitado.
Instalando pacotes
Os pacotes de arquivos geralmente são instalados por download direto de repositórios
localizados em servidores da Internet. Os repositórios Debian contêm mais de 65.000
pacotes de software diferentes. Antes de instalar um pacote, é recomendado atualizar
a lista de pacotes disponíveis usando o comando apt-get update.
Os comandos a seguir podem levar alguns minutos para serem executados.
sudo apt-get update
sysadmin @ localhost : ~ $ sudo apt-get update
[sudo] senha para sysadmin:
Arquivo Ign: amd64 / InRelease
Arquivo Ign: amd64 / Release.gpg
Arquivo Ign: amd64 / Release
Lendo listas de pacotes ... Feito
Para procurar por palavras-chave ( palavra-chave ) dentro destes pacotes, você pode
usar o comando apt-cache search.
pesquisa apt-cache [ palavra-chave ]
A palavra-chave usada deve corresponder a parte do nome ou descrição do pacote que
você está tentando localizar. Várias palavras-chave podem ser usadas para refinar
ainda mais sua pesquisa; por exemplo, o termo de pesquisa web serverfornecerá
resultados melhores do que webou server.
Para pesquisar pacotes associados à palavra cow- chave :
sysadmin @ localhost : ~ $ apt-cache search cow
cowsay - vaca falante configurável
Depois de encontrar o (pacote do pacote ) para instalar, você pode usar o
comando apt-get installpara instalá- lo :
sudo apt-get install [ pacote ]
sysadmin @ localhost : ~ $ sudo apt-get install cowsay
[sudo] senha para sysadmin:
Lendo listas de pacotes ... Concluído
Construindo árvore de dependências
Lendo informações de estado ... Concluído
Pacotes sugeridos:
filtros
Os seguintes NOVOS pacotes serão instalados:
cowsay
0 atualizado, 1 recém-instalado, 0 para remover e 0 não atualizado.
É necessário obter 0 B / 18,5 kB de arquivos.
Após esta operação, 90,1 kB de espaço em disco adicional serão usados.
Seleção de pacote cowsay previamente não selecionado.
(Lendo banco de dados ... 24313 arquivos e diretórios instalados atualmente.)
Preparando para descompactar ... / cowsay_3.03 + dfsg1-6_all.deb ...
Descompactando cowsay (3.03 + dfsg1-6) ...
Processando gatilhos para man- db (2.6.7.1-1ubuntu1) ...
Configurando o cowsay (3.03 + dfsg1-6) ...
Considerar
O comando cowsayé uma vaca falante configurável! Use uma palavra ou frase como
argumento:
sysadmin @ localhost : ~ $ cowsay 'NDG Linux Unhatched'
_____________________
<NDG Linux Unhatched>
---------------------
 ^ __ ^
 (oo)  _______
( __) )  / 
|| ---- w |
|| ||
Recomendamos colocar o argumento entre aspas simples para evitar que o shell
interprete caracteres especiais.
Atualização de pacote
O comando apt-get installtambém pode atualizar um pacote, se esse pacote já estiver
instalado e houver uma versão mais recente disponível. Se o pacote ainda não estiver
no sistema, ele será instalado; se estiver no sistema, será atualizado.
A atualização de todos os pacotes do sistema deve ser feita em duas etapas. Primeiro,
atualize o cache de todos os pacotes disponíveis usando apt-get update. Em segundo
lugar, execute o comando apt-get upgradepara atualizar todos os pacotes e suas
dependências.
apt-get update
apt-get upgrade
sysadmin @ localhost : ~ $ sudo apt-get update
[sudo] senha para sysadmin:
Arquivo Ign: amd64 / InRelease
Arquivo Ign: amd64 / Release.gpg
Arquivo Ign: amd64 / Release
Lendo listas de pacotes ... Concluído sysadmin @ localhos
t : ~ $ sudo apt-get upgrade
Lendo listas de pacotes ... Feito
Construindo árvore de dependências
Lendo informações de estado ... Concluído
Calculando atualização ... Concluído
0 atualizado, 0 recém-instalado, 0 para remover e 0 não atualizado.
Remoção de pacote
O comando apt-getpode remover ou limpar um pacote. A diferença entre os dois é que
purge exclui todos os arquivos do pacote, enquanto remove exclui todos os arquivos
do pacote, exceto os arquivos de configuração.
Um administrador pode executar o comando apt-get removepara remover um pacote
ou o comando apt-get purgepara limpar um pacote completamente do sistema.
apt-get remove [ pacote ]
apt-get purge [ pacote ]
Por exemplo, para limpar cowsaycompletamente, execute o seguinte
comando. Digite Y quando solicitado:
sysadmin @ localhost : ~ $ sudo apt-get purge cowsay
Lendo listas de pacotes ... Concluído
Construindo árvore de dependências
Lendo informações de estado ... Concluído
Os seguintes pacotes serão REMOVIDOS:
cowsay *
0 atualizado, 0 recém-instalado, 1 para remover e 0 não atualizado.
Após esta operação, 90,1 kB de espaço em disco será liberado.
Você quer continuar? [S / n] y
(Lendo o banco de dados ... 24377 arquivos e diretórios instalados atualmente.)
Removendo cowsay (3.03 + dfsg1-6) ...
Processando gatilhos para man-db (2.6.7.1-1ubuntu1) ...
Atualização de senhas de usuário
O comando passwd é usado para atualizar a senha de um usuário. Os usuários só
podem alterar suas próprias senhas, enquanto o usuário root pode atualizar a senha
de qualquer usuário.
Por exemplo, como estamos logados como usuário sysadmin, podemos alterar a senha
dessa conta. Execute o comando passwd. Você será solicitado a inserir a senha atual
uma vez e a nova senha duas vezes. Por motivos de segurança, nenhum resultado é
exibido enquanto a senha está sendo inserida. A saída é mostrada da seguinte forma:
sysadmin @ localhost : ~ $ passwd
Alterando a senha para sysadmin.
(atual) senha UNIX: netlab123
Digite a nova senha do UNIX:
Digite novamente a nova senha UNIX:
passwd: senha atualizada com sucesso
Se o usuário deseja ver informações sobre sua senha, ele pode usar a opção -S:
sysadmin @ localhost : ~ $ passwd -S sysadmin
sysadmin P 20/12/2017 0 99999 7 -1
O usuário root pode alterar a senha de qualquer usuário. Se o usuário root deseja
alterar a senha de sysadmin, ele executará o seguinte comando:
root @ localhost : ~ # passwd sysadmin
Digite a nova senha do UNIX:
Digite novamente a nova senha UNIX:
passwd: senha atualizada com sucesso
Redirecionamento
Adicionar conteúdo a arquivos no Linux pode ser feito de várias maneiras. O Linux tem
alguns editores de texto que podem ser usados para adicionar conteúdo a um
arquivo. No entanto, esse método requer alguma familiaridade com os comandos do
editor de texto do Linux.
Nota
Os editores de texto do Linux são abordados na próxima seção deste curso.
No Linux, o conteúdo pode ser adicionado a um arquivo rapidamente usando uma
função de linha de comando chamada redirecionamento de entrada / saída (E / S)
( entrada / saída; E / S ). O redirecionamento de E / S ( E / S ) permite enviar
informações de linha de comando para arquivos, dispositivos e outros comandos. A
entrada ou saída de um comando é redirecionada de seu destino padrão para um local
diferente. O redirecionamento de E / S é como uma série de trilhos de trem, onde você
pode habilitar um switch para direcionar a saída de um comando para um caminho
diferente que vai para outro lugar no shell. Nesta seção, escreveremos em arquivos
redirecionando a saída de um comando para outro arquivo.
Quando se trata de comandos de entrada e saída, existem três rotas, ou
"formas". Esses caminhos são chamados de descritores de arquivo . O primeiro
descritor de arquivo é a entrada padrão, abreviado como STDIN ( entrada padrão ). A
entrada padrão é a informação que o comando recebe e processa quando é
executado, essencialmente o que um usuário digita no teclado. O segundo descritor de
arquivo é a saída padrão, abreviado como STDOUT ( saída padrão ). A saída padrão é a
informação que o comando exibe, a saída do comando. O último descritor de arquivo é
o erro padrão, abreviado como STDERR ( erro padrão) STDERR, são as mensagens de
erro geradas por comandos que não são executados corretamente. A seguir estão
exemplos de como os descritores de arquivo aparecerão no terminal:
Entrada padrão (STDIN)
sysadmin @ localhost: ~ $ ls ~ / Documents
Saída padrão (STDOUT)
sysadmin @ localhost: ~ $ ls
Documentos da área de trabalho Downloads Música Imagens Modelos públicos Víde
os
Erro padrão (STDERR)
sysadmin @ localhost: ~ $ ls fakefile
ls: não é possível acessar o arquivo fake: Não existe esse arquivo ou diretório
Esta seção cobrirá um dos três descritores de arquivo, STDOUT, e como redirecionar
STDOUT de onde normalmente aparece no terminal, para um arquivo no sistema de
arquivos. Para executar o redirecionamento, basta usar o símbolo "maior que" >ao
lado do nome do arquivo:
[COMANDO]> [ARQUIVO]
Para demonstrar como o redirecionamento funciona, usaremos a saída do
comando cat. Sem redirecionamento, a saída do comando cat será exibida no terminal:
sysadmin @ localhost : ~ $ cd ~ / Documentos
sysadmin @ localhost : ~ / Documents $ cat food.txt A
comida é boa.
Agora use o caractere > para redirecionar o STDOUT do comando cat food.txt acima
para um novo arquivo chamado newfile1.txt:
sysadmin @ localhost : ~ / Documents $ cat food.txt> newfile1.txt
Como você pode ver, nenhuma saída é exibida porque o STDOUT foi redirecionado
para o arquivo newfile1.txt. Verifique se o STDOUT do comando cat food.txtestá
em newfile1.txt:
sysadmin @ localhost : ~ / Documents $ cat newfile1.txt A
comida é boa.
Esta função é útil se você precisar copiar o conteúdo de um arquivo importante para
outro arquivo para editar seu conteúdo sem modificar o arquivo original.
Alterando conteúdo dentro de um arquivo
echo “eu gosto de comida.” > newfile1.txt
o sinal de > faz com que substitua o conteúdo dentro do arquivo..
echo “quero mais comida.” >>newfile1.txt
o sinal >> adiciona mais um conteúdo dentro do arquivo.
sysadmin @ localhost : ~ / Documents $ cat newfile1.txt
Eu quero mais comida.
Eu como comida.
Importante
Para redirecionar informações para um arquivo existente, o usuário deve ter
permissões de gravação para esse arquivo.
Whoami – exibe o nome do usuário atual
Uname –n exibe o nome do host
date exibe a data e hora do sistema operacional
which date exibe a localidade da variável de data e hora
; é utilizado para executar vários comando, um após o outro da esquerda para direita
cal 1 2020; cal 1 2121; assim por diante.
whatis pesquisa o comando e informa para que serve.. whatis ls
whereis onde o comando esta localizado
locate este comando de pesquisa serve para procurar diretórios no sistema
Limitando a Saída
Exemplo: Locate –c –b “passwd”
sysadmin @ localhost : ~ $ locate -b " passwd"
/ etc / passwd
/etc/cron.daily/passwd
/etc/pam.d/passwd
/ usr / bin / passwd
/ usr / share / doc / passwd
/ usr / share / lintian / overrides / passwd
man para entrar nos manuais de pesquisa do sistema
man –k passwd – para resumir uma pesquisa em todas as paginas com a palavra
passwd
Nota: Não há diferença entre comando man-k e comando apropos.
Manuais
Man –f passwd
sysadmin @ localhost : ~ $ man -f passwd
passwd (5) - o arquivo de senha
passwd (1) - alterar a senha do usuário
passwd (1ssl) - computar hashes de senha sysadmin @ localhost : ~ $
Nota: Não há diferença entre o comando man -f e o comando whatis .
Quase todas as funções do sistema (comandos, arquivos do sistema, etc.) possuem
páginas de manual ex: info date para verificar informações de data.

More Related Content

Similar to Comandos básicos Linux.docx

Similar to Comandos básicos Linux.docx (20)

Aula 06 comandos linux
Aula 06   comandos linuxAula 06   comandos linux
Aula 06 comandos linux
 
44087090 tutorial-programacao-batch
44087090 tutorial-programacao-batch44087090 tutorial-programacao-batch
44087090 tutorial-programacao-batch
 
Shell Script v0
Shell Script v0Shell Script v0
Shell Script v0
 
Aula 10 semana
Aula 10 semanaAula 10 semana
Aula 10 semana
 
Terminal off python
Terminal off pythonTerminal off python
Terminal off python
 
Comandos, Permissões e Partições Linux
Comandos, Permissões e Partições LinuxComandos, Permissões e Partições Linux
Comandos, Permissões e Partições Linux
 
Aula 10 semana
Aula 10 semanaAula 10 semana
Aula 10 semana
 
Introduction to linux
Introduction to linuxIntroduction to linux
Introduction to linux
 
Aulas linux
Aulas linuxAulas linux
Aulas linux
 
Comandos do linux
Comandos do linuxComandos do linux
Comandos do linux
 
Manual comandos
Manual comandosManual comandos
Manual comandos
 
Linux shell
Linux shellLinux shell
Linux shell
 
Shell Script
Shell ScriptShell Script
Shell Script
 
Programando em python arquivos
Programando em python   arquivosProgramando em python   arquivos
Programando em python arquivos
 
Operadores de redirecionamento
Operadores de redirecionamentoOperadores de redirecionamento
Operadores de redirecionamento
 
Comandos Unix
Comandos UnixComandos Unix
Comandos Unix
 
Apostila comandos unix
Apostila   comandos unixApostila   comandos unix
Apostila comandos unix
 
Shell script
Shell script Shell script
Shell script
 
Curso De Shell Aula 6
Curso De Shell   Aula 6Curso De Shell   Aula 6
Curso De Shell Aula 6
 
Comandos filtro
Comandos filtroComandos filtro
Comandos filtro
 

Comandos básicos Linux.docx

  • 1. Comandos básicos Linux cd / (diretório Raiz pwd (mostra o diretório em que o usuário esta no momento ls (mostra o conteúdo dentro do diretório ls –l (mostra o conteúdo dentro do diretório em formato longo ls –lr (mostra o conteúdo dentro diretório em formato longo reverso ls –lh (mostra o conteúdo com o tamanho em kb ls –la (mostra os arquivos ocultos) ls –m mostrado em sequencia separado por virgula ls –n mostra o ID e o GID do usuário e grupo ls –o não mostra o grupo do arquivo ls –p mosta a listagem dos arquivos, se for diretório acrescenta a / Misturando caracteres ls –lh /etc | less para paginar conteúdos grandes para sair do comando letra q. touch [nome do arquivo] para criar arquivo vazio mkdir para criar diretórios su – altera o terminal para modo root(administrador) chown alterando o dono do arquivo Ex: sudo chown root hello.sh (alterando o arquivo para o usuário root ter permissão). chgrp alterando o grupo do arquivo chmod (alterar permissões nos arquivos u – usuário dono do arquivo g – grupo o - outros  Leitura (Read): r  Escrita (Write): w  Execução (Execute): x Ex: chmod u+rwx hello.sh (atribuindo leitura, escrita e execução para o arquivo). Modo octal: utilizar sequencias numerais 777 níveis mais alto para todos 777 –rwxrwxrwx total permissão para todos 000 –--------- para nenhuma permissão para todos 764 –rwxrw-r-- total para usuário, leitura e escrita para grupo, e apenas leitura para outros. Código Tipo de arquivo – Arquivo normal de dados, como texto, imagens, vídeos, programas executáveis, arquivos zipados, etc. d Diretório. Os diretórios são arquivos também, porém contendo nomes de arquivos e ponteiros para inodes do disco. l Link simbólico (symlink) – um arquivo que aponta para um outro arquivo ou diretório p Pipe nomeado. Um pipe permite que dois programas em execução se comuniquem entre si, escreverndo e lendo dados no pipe.
  • 2. Código Tipo de arquivo s Socket. Um socket é parecido com um pipe nomeado, porém é usado em comunicações de rede. b Dispositivo de bloco, o qual é um arquivo que corresponde a um dispositivo de hardware para o qual os dados são transferidos (e lidos) em blocos de bytes. c Dispositivo de caractere, que é um arquivo que corresponde a um dispositivo de hardware para o qual os dados são transferidos (e lidos) em unidades de um byte. cat (concatena o arquivo, recomendado para arquivos pequenos que não requer rolagem de tela. head concatena o arquivo, mostra apenas as primeiras linhas do arquivo 5, 10, 20... head –n concatena o arquivo e –n permite o numero de linhas a visualizada tail –n concatena o arquivo, -n permite o numero de linhas a visualizada Copiar arquivo: sudo cp (copy) rfv vai mostrar o conteúdo sendo copiado sudo cp –rfv /. Nome do arquivo (. Ponto referente ao local atual)  Comando dd  Ele pode ser usado para clonar ou limpar discos ou partições inteiras.  Pode ser usado para copiar dados brutos (raw) a dispositivos extraíbles como dispositivos USB o CD ROMS.  Ele pode ser usado para fazer uma cópia de reserva ( backup ) e restaurar o MBR ( Master Boot Record ).  Ele pode ser usado para criar um arquivo de tamanho especificado preenchido com zeros binários, que pode ser usado como um arquivo de troca (memória virtual). Ex: dd if=/dev/zero of=/tmp/swapex bs=1M count=5o 50+0 records in 50+0 records out 52428800 bytes (52 MB) copied, 0.825745 s, 635 MB/s Argumento Descrição if Arquivo de entrada (Arquivo de entrada ): O arquivo de entrada a ser lido. dd if = / dev / zero de = / tmp / swapex bs = 1M contagem = 50 O exemplo lê o arquivo /dev/zero, um arquivo especial que contém um número ilimitado de zeros.
  • 3. Argumento Descrição of Arquivo de saída ( Arquivo de saída ): O arquivo de saída a ser gravado. dd if = / dev / zero de = / tmp / swapex bs = 1M contagem = 50 bs Block Size ( Block Size ): O tamanho do bloco a ser usado. Por padrão, o valor está em bytes. Use os seguintes sufixos para especificar outras unidades: K, M, G e T para kilobytes, megabytes, gigabytes e terabytes, respectivamente. dd if = / dev / zero de = / tmp / swapex bs = 1M contagem = 50 O exemplo usa um tamanho de bloco de um megabyte. count Contagem: o número de blocos a serem lidos do arquivo de entrada. dd if = / dev / zero de = / tmp / swapex bs = 1M contagem = 50 Neste exemplo, 50 blocos são lidos. Colnar : dd if = / dev / sda of = / dev / sdb Mover arquivos mv utilizado para mover arquivos, use o nome do arquivo como origem e o nome do di retório como destino: ex: localhost : ~ / Documents $ mv people.csv Work mv arquivo1.txt arquivo2.txt arquivo3.txt Destino (movendo vários arquivos). Mover um arquivo dentro do mesmo diretório é uma maneira eficiente de renomeá- lo. EX: mv animals.txt zoo.txt Deletar Arquivos rm utilizado para excluir arquivos, uma vez usado excluir permanentemente. rm –r utilizado para remover diretórios, uma vez usado excluir permanentemente. Filtrando entradas grep - é um filtro de texto que procura linhas em uma entrada e retornará aquelas que correspondem a um determinado padrão.
  • 4. Expressões regulares As expressões regulares têm duas formas comuns: a forma básica e a forma estendida. A maioria dos comandos que usam expressões regulares podem interpretar expressões regulares básicas. No entanto, as expressões regulares estendidas não estão disponíveis para todos os comandos e geralmente requerem uma opção de comando para funcionar corretamente. Caracteres básicos do Regex Significado . Qualquer personagem [ ] Qualquer caractere especificado [^] Qualquer caractere que não seja o caractere especificado * Zero ou mais do caractere anterior ^ Se for o primeiro caractere do padrão, o padrão deve estar no início da linha para corresponder, caso contrário, será tratado como um ^literal. $ Se for o último caractere do padrão, o padrão deve estar no final da linha para corresponder, caso contrário, será tratado como um $literal. A tabela a seguir resume as expressões regulares estendidas, que devem ser usadas com o comando egrep ou opção -Ecom o comando grep: Caracteres básicos do Regex Significado + Um ou mais dos padrões acima ? O padrão é opcional
  • 5. Caracteres básicos do Regex Significado { } Especifique correspondências mínimas, máximas ou exatas no padrão acima | Alternação - o "o" lógico ( ) Usado para criar grupos Personagens âncora Caracteres âncora são uma das maneiras pelas quais as expressões regulares podem ser usadas para limitar os resultados de uma pesquisa. Por exemplo, o padrão rootaparece muitas vezes no arquivo /etc/passwd: sysadmin @ localhost : ~ / Documentos $ grep 'root' passwd root : x: 0: 0: root : / root : / bin / bash operator: x: 1000: 37 :: / root : Para evitar que o shell os interprete incorretamente como caracteres especiais de shell, esses padrões devem ser escritos protegidos por aspas sólidas, o que significa simplesmente colocá-los entre aspas O primeiro caractere de âncora ^é usado para indicar que o padrão deve aparecer no início da linha. Por exemplo, para encontrar todas as linhas /etc/passwdque começam com, rootuse o padrão ^root. Observe que ele ^deve ser o primeiro caractere do padrão para ser eficaz. sysadmin @ localhost : ~ / Documentos $ grep '^ root' / etc / passwd root : x: 0: 0: root: / root: / bin / bash Uma das expressões mais úteis é o caractere .(ponto). Representa qualquer caractere, exceto o caractere de nova linha. O padrão r..fencontrará qualquer linha que contenha a letra rseguida por exatamente dois caracteres (que podem ser qualquer caractere, exceto a nova linha) e a letra f: sysadmin @ localhost : ~ / Documents $ grep 'r..f' red.txt
  • 6. recife roof A linha não precisa corresponder exatamente, apenas deve conter o padrão, conforme visto a seguir ao pesquisar r..to arquivo /etc/passwd: sysadmin @ localhost : ~ / Documents $ grep 'r..t' / etc / passwd root : x: 0: 0: root : / root : / bin / bash operator: x: 1000: 37 :: / root : Encontre um único personagem usando [] Comando grep ‘[0-9]’ profile.txt sysadmin @ localhost : ~ / Documents $ cat profile.txt Olá, meu nome é Joe. Tenho 37 anos de idade. 3121991 Minha comida favorita é abacate. Tenho 2 cachorros. 123456789101112 Para encontrar todas as linhas no arquivo profile.txtque contêm um número, use o padrão [0123456789]ou [0-9]: sysadmin @ localhost : ~ / Documents $ grep '[0-9]' profile.txt Tenho 37 anos. 3121991 Tenho 2 cães. 123456789101112 Para encontrar linhas ignorando caracteres numéricos o ˆ ignora o restante da sintaxe do comando [0-9]. grep '[^ 0-9]' profile.txt Quando outros caracteres de expressão regular são colocados entre colchetes, eles são tratados como caracteres literais. Por exemplo, caractere .geralmente indica qualquer
  • 7. caractere. Mas se for colocado entre colchetes, simplesmente se referirá ao personagem. (ponto). No exemplo a seguir, apenas as linhas que contêm o caractere .serão exibidas na saída. sysadmin @ localhost : ~ / Documents $ grep '[.]' profile.txt Olá, meu nome é Joe . Tenho 37 anos de idade . Minha comida favorita é abacate . Tenho 2 cachorros . Indique um caractere ou padrão repetido usando o * O caractere de expressão regular * é usado para indicar a ausência ou presença uma ou mais vezes do caractere ou padrão que o precede. Por exemplo, e * indicaria a ausência (zero) ou a presença, uma ou mais vezes, da letra e: sysadmin@localhost:~/Documents$ cat red.txt red reef rot reeed rd rod roof reed root reel read sysadmin@localhost:~/Documents$ grep 're*d' red.txt red reeed rd reed
  • 8. Também é possível indicar a ausência ou presença uma ou mais vezes de uma lista de personagens usando os colchetes. O padrão [oe]*usado no exemplo a seguir refere-se a linhas com o caractere oou caractere ausente ou presente uma ou mais vezes e: sysadmin @ localhost : ~ / Documentos $ grep 'r [oe] * d' red.txt red reeed rd rod reed grep '[.a*]' red.txt grep ‘[.a*]’ red.txt – procura todas as palavras com letra a, é possível misturar os o comando para encontrar mais de uma letra no arquivo.. ex: grep ‘[.od*]’ red.txt sysadmin@localhost:~/Documents$ grep '[.od*]' red.txt red rot reeed rd rod roof reed root read Desligar Esse comando so é permitido com usuário root su – (senha). Shutdown now Shutdown +1 “sistema entrará em manutenção” Isso impedirá que usuário logem no sistema nos últimos 5 minutos após o comando.. Configuração de rede Ifconfig interface de rede
  • 9. Iwconfig interface de rede wifi Ping –c 4 www.google.com: determina que so sera aprendentado 4 ping na tela. Visualização do processo O comando ps pode ser usado para listar os processos que esta sendo utilizado no terminal no momento. O comando os –e visualiza todos os processos do sistema. O gerenciamento de pacotes é um sistema pelo qual o software pode ser instalado, atualizado, consultado ou removido de um sistema de arquivos. No Linux, existem muitos sistemas de gerenciamento de pacote de software diferentes, mas os dois mais populares são Debian e Red Hat. As máquinas virtuais neste curso usam Ubuntu, um derivado do Debian. Continue lendo Muitos dos comandos de gerenciamento de pacotes requerem acesso administrativo, portanto, serão precedidos pelo comando sudo. Use netlab123como senha quando solicitado. Instalando pacotes Os pacotes de arquivos geralmente são instalados por download direto de repositórios localizados em servidores da Internet. Os repositórios Debian contêm mais de 65.000 pacotes de software diferentes. Antes de instalar um pacote, é recomendado atualizar a lista de pacotes disponíveis usando o comando apt-get update. Os comandos a seguir podem levar alguns minutos para serem executados. sudo apt-get update sysadmin @ localhost : ~ $ sudo apt-get update [sudo] senha para sysadmin: Arquivo Ign: amd64 / InRelease Arquivo Ign: amd64 / Release.gpg Arquivo Ign: amd64 / Release Lendo listas de pacotes ... Feito Para procurar por palavras-chave ( palavra-chave ) dentro destes pacotes, você pode usar o comando apt-cache search. pesquisa apt-cache [ palavra-chave ] A palavra-chave usada deve corresponder a parte do nome ou descrição do pacote que você está tentando localizar. Várias palavras-chave podem ser usadas para refinar
  • 10. ainda mais sua pesquisa; por exemplo, o termo de pesquisa web serverfornecerá resultados melhores do que webou server. Para pesquisar pacotes associados à palavra cow- chave : sysadmin @ localhost : ~ $ apt-cache search cow cowsay - vaca falante configurável Depois de encontrar o (pacote do pacote ) para instalar, você pode usar o comando apt-get installpara instalá- lo : sudo apt-get install [ pacote ] sysadmin @ localhost : ~ $ sudo apt-get install cowsay [sudo] senha para sysadmin: Lendo listas de pacotes ... Concluído Construindo árvore de dependências Lendo informações de estado ... Concluído Pacotes sugeridos: filtros Os seguintes NOVOS pacotes serão instalados: cowsay 0 atualizado, 1 recém-instalado, 0 para remover e 0 não atualizado. É necessário obter 0 B / 18,5 kB de arquivos. Após esta operação, 90,1 kB de espaço em disco adicional serão usados. Seleção de pacote cowsay previamente não selecionado. (Lendo banco de dados ... 24313 arquivos e diretórios instalados atualmente.) Preparando para descompactar ... / cowsay_3.03 + dfsg1-6_all.deb ... Descompactando cowsay (3.03 + dfsg1-6) ... Processando gatilhos para man- db (2.6.7.1-1ubuntu1) ... Configurando o cowsay (3.03 + dfsg1-6) ... Considerar O comando cowsayé uma vaca falante configurável! Use uma palavra ou frase como argumento: sysadmin @ localhost : ~ $ cowsay 'NDG Linux Unhatched'
  • 11. _____________________ <NDG Linux Unhatched> --------------------- ^ __ ^ (oo) _______ ( __) ) / || ---- w | || || Recomendamos colocar o argumento entre aspas simples para evitar que o shell interprete caracteres especiais. Atualização de pacote O comando apt-get installtambém pode atualizar um pacote, se esse pacote já estiver instalado e houver uma versão mais recente disponível. Se o pacote ainda não estiver no sistema, ele será instalado; se estiver no sistema, será atualizado. A atualização de todos os pacotes do sistema deve ser feita em duas etapas. Primeiro, atualize o cache de todos os pacotes disponíveis usando apt-get update. Em segundo lugar, execute o comando apt-get upgradepara atualizar todos os pacotes e suas dependências. apt-get update apt-get upgrade sysadmin @ localhost : ~ $ sudo apt-get update [sudo] senha para sysadmin: Arquivo Ign: amd64 / InRelease Arquivo Ign: amd64 / Release.gpg Arquivo Ign: amd64 / Release Lendo listas de pacotes ... Concluído sysadmin @ localhos t : ~ $ sudo apt-get upgrade Lendo listas de pacotes ... Feito Construindo árvore de dependências Lendo informações de estado ... Concluído Calculando atualização ... Concluído 0 atualizado, 0 recém-instalado, 0 para remover e 0 não atualizado.
  • 12. Remoção de pacote O comando apt-getpode remover ou limpar um pacote. A diferença entre os dois é que purge exclui todos os arquivos do pacote, enquanto remove exclui todos os arquivos do pacote, exceto os arquivos de configuração. Um administrador pode executar o comando apt-get removepara remover um pacote ou o comando apt-get purgepara limpar um pacote completamente do sistema. apt-get remove [ pacote ] apt-get purge [ pacote ] Por exemplo, para limpar cowsaycompletamente, execute o seguinte comando. Digite Y quando solicitado: sysadmin @ localhost : ~ $ sudo apt-get purge cowsay Lendo listas de pacotes ... Concluído Construindo árvore de dependências Lendo informações de estado ... Concluído Os seguintes pacotes serão REMOVIDOS: cowsay * 0 atualizado, 0 recém-instalado, 1 para remover e 0 não atualizado. Após esta operação, 90,1 kB de espaço em disco será liberado. Você quer continuar? [S / n] y (Lendo o banco de dados ... 24377 arquivos e diretórios instalados atualmente.) Removendo cowsay (3.03 + dfsg1-6) ... Processando gatilhos para man-db (2.6.7.1-1ubuntu1) ... Atualização de senhas de usuário O comando passwd é usado para atualizar a senha de um usuário. Os usuários só podem alterar suas próprias senhas, enquanto o usuário root pode atualizar a senha de qualquer usuário. Por exemplo, como estamos logados como usuário sysadmin, podemos alterar a senha dessa conta. Execute o comando passwd. Você será solicitado a inserir a senha atual uma vez e a nova senha duas vezes. Por motivos de segurança, nenhum resultado é exibido enquanto a senha está sendo inserida. A saída é mostrada da seguinte forma: sysadmin @ localhost : ~ $ passwd Alterando a senha para sysadmin. (atual) senha UNIX: netlab123
  • 13. Digite a nova senha do UNIX: Digite novamente a nova senha UNIX: passwd: senha atualizada com sucesso Se o usuário deseja ver informações sobre sua senha, ele pode usar a opção -S: sysadmin @ localhost : ~ $ passwd -S sysadmin sysadmin P 20/12/2017 0 99999 7 -1 O usuário root pode alterar a senha de qualquer usuário. Se o usuário root deseja alterar a senha de sysadmin, ele executará o seguinte comando: root @ localhost : ~ # passwd sysadmin Digite a nova senha do UNIX: Digite novamente a nova senha UNIX: passwd: senha atualizada com sucesso Redirecionamento Adicionar conteúdo a arquivos no Linux pode ser feito de várias maneiras. O Linux tem alguns editores de texto que podem ser usados para adicionar conteúdo a um arquivo. No entanto, esse método requer alguma familiaridade com os comandos do editor de texto do Linux. Nota Os editores de texto do Linux são abordados na próxima seção deste curso. No Linux, o conteúdo pode ser adicionado a um arquivo rapidamente usando uma função de linha de comando chamada redirecionamento de entrada / saída (E / S) ( entrada / saída; E / S ). O redirecionamento de E / S ( E / S ) permite enviar informações de linha de comando para arquivos, dispositivos e outros comandos. A entrada ou saída de um comando é redirecionada de seu destino padrão para um local diferente. O redirecionamento de E / S é como uma série de trilhos de trem, onde você pode habilitar um switch para direcionar a saída de um comando para um caminho diferente que vai para outro lugar no shell. Nesta seção, escreveremos em arquivos redirecionando a saída de um comando para outro arquivo. Quando se trata de comandos de entrada e saída, existem três rotas, ou "formas". Esses caminhos são chamados de descritores de arquivo . O primeiro descritor de arquivo é a entrada padrão, abreviado como STDIN ( entrada padrão ). A entrada padrão é a informação que o comando recebe e processa quando é executado, essencialmente o que um usuário digita no teclado. O segundo descritor de arquivo é a saída padrão, abreviado como STDOUT ( saída padrão ). A saída padrão é a informação que o comando exibe, a saída do comando. O último descritor de arquivo é
  • 14. o erro padrão, abreviado como STDERR ( erro padrão) STDERR, são as mensagens de erro geradas por comandos que não são executados corretamente. A seguir estão exemplos de como os descritores de arquivo aparecerão no terminal: Entrada padrão (STDIN) sysadmin @ localhost: ~ $ ls ~ / Documents Saída padrão (STDOUT) sysadmin @ localhost: ~ $ ls Documentos da área de trabalho Downloads Música Imagens Modelos públicos Víde os Erro padrão (STDERR) sysadmin @ localhost: ~ $ ls fakefile ls: não é possível acessar o arquivo fake: Não existe esse arquivo ou diretório Esta seção cobrirá um dos três descritores de arquivo, STDOUT, e como redirecionar STDOUT de onde normalmente aparece no terminal, para um arquivo no sistema de arquivos. Para executar o redirecionamento, basta usar o símbolo "maior que" >ao lado do nome do arquivo: [COMANDO]> [ARQUIVO] Para demonstrar como o redirecionamento funciona, usaremos a saída do comando cat. Sem redirecionamento, a saída do comando cat será exibida no terminal: sysadmin @ localhost : ~ $ cd ~ / Documentos sysadmin @ localhost : ~ / Documents $ cat food.txt A comida é boa. Agora use o caractere > para redirecionar o STDOUT do comando cat food.txt acima para um novo arquivo chamado newfile1.txt: sysadmin @ localhost : ~ / Documents $ cat food.txt> newfile1.txt Como você pode ver, nenhuma saída é exibida porque o STDOUT foi redirecionado para o arquivo newfile1.txt. Verifique se o STDOUT do comando cat food.txtestá em newfile1.txt: sysadmin @ localhost : ~ / Documents $ cat newfile1.txt A comida é boa.
  • 15. Esta função é útil se você precisar copiar o conteúdo de um arquivo importante para outro arquivo para editar seu conteúdo sem modificar o arquivo original. Alterando conteúdo dentro de um arquivo echo “eu gosto de comida.” > newfile1.txt o sinal de > faz com que substitua o conteúdo dentro do arquivo.. echo “quero mais comida.” >>newfile1.txt o sinal >> adiciona mais um conteúdo dentro do arquivo. sysadmin @ localhost : ~ / Documents $ cat newfile1.txt Eu quero mais comida. Eu como comida. Importante Para redirecionar informações para um arquivo existente, o usuário deve ter permissões de gravação para esse arquivo. Whoami – exibe o nome do usuário atual Uname –n exibe o nome do host date exibe a data e hora do sistema operacional which date exibe a localidade da variável de data e hora ; é utilizado para executar vários comando, um após o outro da esquerda para direita cal 1 2020; cal 1 2121; assim por diante. whatis pesquisa o comando e informa para que serve.. whatis ls whereis onde o comando esta localizado locate este comando de pesquisa serve para procurar diretórios no sistema Limitando a Saída Exemplo: Locate –c –b “passwd” sysadmin @ localhost : ~ $ locate -b " passwd" / etc / passwd /etc/cron.daily/passwd /etc/pam.d/passwd / usr / bin / passwd / usr / share / doc / passwd / usr / share / lintian / overrides / passwd man para entrar nos manuais de pesquisa do sistema
  • 16. man –k passwd – para resumir uma pesquisa em todas as paginas com a palavra passwd Nota: Não há diferença entre comando man-k e comando apropos. Manuais Man –f passwd sysadmin @ localhost : ~ $ man -f passwd passwd (5) - o arquivo de senha passwd (1) - alterar a senha do usuário passwd (1ssl) - computar hashes de senha sysadmin @ localhost : ~ $ Nota: Não há diferença entre o comando man -f e o comando whatis . Quase todas as funções do sistema (comandos, arquivos do sistema, etc.) possuem páginas de manual ex: info date para verificar informações de data.