Existem alguns comandos Linux fundamentais e comuns com exemplos de uso:
Filesystem
ls
O comando ls
lista o conteúdo do diretório atual (ou um que é especificado). Pode ser usado com a bandeira -l
para exibir informações adicionais (permissões, dono, grupo, tamanho, data e timestamp da última edição) sobre cada arquivo e diretório em um formato de lista. O sinalizador -a
permite visualizar ficheiros começando por .
(i.e. dotfiles).
cd
Using cd
muda o directório actual para o especificado. Você pode usar caminhos relativos (i.e. cd directoryA
) ou absolutos (i.e. cd /home/pi/directoryA
).
pwd
O comando pwd
mostra o nome do diretório de trabalho atual: em um Raspberry Pi, digitando pwd
irá sair algo como /home/pi
.
mkdir
Pode usar mkdir
para criar um novo directório, por exemplo mkdir newDir
criaria o directório newDir
no actual directório de trabalho.
rmdir
Para remover directórios vazios, use rmdir
. Assim, por exemplo, rmdir oldDir
removerá o directório oldDir
apenas se estiver vazio.
rm
O comando rm
remove o ficheiro especificado (ou recursivamente de um directório quando usado com -r
). Tenha cuidado com este comando: os ficheiros apagados desta forma desaparecem na sua maioria para sempre!
cp
Using cp
faz uma cópia de um ficheiro e coloca-o no local especificado (isto é semelhante a copiar e colar). Por exemplo, cp ~/fileA /home/otherUser/
copia o ficheiro fileA
do seu directório home para o do utilizador otherUser
(assumindo que tem permissão para o copiar lá). Este comando pode tomar FILE FILE
(cp fileA fileB
), FILE DIR
(cp fileA /directoryB/
) ou -r DIR DIR
(que copia recursivamente o conteúdo dos directórios) como argumentos.
mv
O comando mv
move um ficheiro e coloca-o no local especificado (por isso onde cp
executa uma ‘copy-paste’, mv
executa uma ‘cut-paste’). O uso é similar a cp
. Então mv ~/fileA /home/otherUser/
moveria o arquivo fileA
do seu diretório home para o do outro usuário usuário. Este comando pode ter como argumentos ou FILE FILE
(mv fileA fileB
), FILE DIR
(mv fileA /directoryB/
) ou DIR DIR
(mv /directoryB /directoryC
). Este comando também é útil como um método para renomear ficheiros e directórios depois de criados.
touch
>O comando touch
define o último carimbo de tempo modificado do(s) ficheiro(s) especificado(s) ou cria-o se ainda não existir.
cat
Pode usar cat
para listar o conteúdo do(s) ficheiro(s), e.g. cat thisFile
irá exibir o conteúdo de thisFile
. Pode ser usado para listar o conteúdo de múltiplos ficheiros, ou seja, cat *.txt
irá listar o conteúdo de todos os ficheiros .txt
no directório actual.
head
O comando head
mostra o início de um ficheiro. Pode ser usado com -n
para especificar o número de linhas a mostrar (por defeito dez), ou com -c
para especificar o número de bytes.
tail
O oposto de head
, tail
mostra o fim de um ficheiro. O ponto inicial no arquivo pode ser especificado através de -b
para blocos de 512 bytes, -c
para bytes, ou -n
para número de linhas.
chmod
Você normalmente usaria chmod
para alterar as permissões de um arquivo. O comando chmod
pode usar símbolos u
(usuário que possui o arquivo), g
(o grupo de arquivos) , e o
(outros usuários) e as permissões r
(ler), w
(escrever), e x
(executar). Usando chmod u+x *filename*
irá adicionar permissão de execução para o dono do arquivo.
chown
O comando chown
muda o usuário e/ou grupo que possui um arquivo. Ele normalmente precisa ser executado como root usando sudo por exemplo sudo chown pi:root *filename*
mudará o dono para pi e o grupo para root.
ssh
ssh
denota a shell segura. Para mais detalhes veja SSH (secure shell)
scp
O comando scp
copia um ficheiro de um computador para outro usando ssh
.Para mais detalhes veja SCP (secure copy)
sudo
O comando sudo
permite executar um comando como um super utilizador, ou outro utilizador. Para mais detalhes veja Root user / sudo
dd
The dd
command copia um ficheiro convertendo o ficheiro como especificado. É frequentemente usado para copiar um disco inteiro para um único ficheiro ou para trás novamente. Assim, por exemplo, dd if=/dev/sdd of=backup.img
irá criar uma imagem de backup a partir de um cartão SD ou drive de disco USB em /dev/sdd. Certifique-se de usar a unidade correta ao copiar uma imagem para o cartão SD, pois ela pode sobrescrever o disco inteiro.
df
Use df
para exibir o espaço em disco disponível e usado nos sistemas de arquivos montados. Use df -h
para ver a saída em um formato legível por humanos usando M para MBs ao invés de mostrar o número de bytes.
>
unzip
O comando unzip
extrai os ficheiros de um ficheiro zip comprimido.
tar
Utilizar tar
para armazenar ou extrair ficheiros de um ficheiro de arquivo em cassete. Também pode reduzir o espaço necessário comprimindo o ficheiro de forma semelhante a um ficheiro zip.
Para criar um arquivo comprimido, use tar -cvzf *filename.tar.gz* *directory/*
Para extrair o conteúdo de um arquivo, use tar -xvzf *filename.tar.gz*
pipes
Um pipe permite que a saída de um comando seja usada como entrada para outro comando. O símbolo do pipe é uma linha vertical |
. Por exemplo, para mostrar apenas as primeiras dez entradas do comando ls
pode ser piped através do comando head ls | head
tree
Utilizar o comando tree
para mostrar um directório e todos os subdirectórios e ficheiros indentados como uma estrutura em árvore.
&
Executar um comando em segundo plano com &
, libertando a shell para comandos futuros.
wget
Baixar um arquivo da web diretamente para o computador com wget
. Então wget https://www.raspberrypi.org/documentation/linux/usage/commands.md
irá baixar este arquivo para o seu computador como commands.md
curl
Utilizar curl
para baixar ou carregar um arquivo para/de um servidor. Por padrão, ele irá emitir o conteúdo do arquivo para a tela.
man
Show the manual page for a file with man
. Para saber mais, execute man man
para ver a página de manual do comando man.
Procurar
grep
Utilizar grep
para procurar dentro de arquivos por certos padrões de busca. Por exemplo, grep "search" *.txt
procurará em todos os arquivos do diretório atual terminados com .txt para a busca de strings.
O comando grep
suporta expressões regulares que permitem combinações especiais de letras a serem incluídas na busca.
awk
awk
é uma linguagem de programação útil para procurar e manipular ficheiros de texto.
find
O comando find
procura um directório e subdirectórios para ficheiros que correspondam a certos padrões.
whereis
Use whereis
para encontrar a localização de um comando. Ele procura através de localizações de programas padrão até encontrar o comando solicitado.
Rede
ping
O utilitário ping
é normalmente usado para verificar se a comunicação pode ser feita com outro host. Ele pode ser usado com configurações padrão apenas especificando um nome de host (por exemplo, ping raspberrypi.org
) ou um endereço IP (por exemplo, ping 8.8.8.8
). Ele pode especificar o número de pacotes a enviar com a bandeira -c
nmap
nmap
é uma ferramenta de exploração e digitalização da rede. Ele pode retornar informações de porta e SO sobre um host ou uma gama de hosts. Executando apenas nmap
irá exibir as opções disponíveis, bem como exemplos de uso.
hostname
>O comando hostname
exibe o nome da máquina atual do sistema. Um usuário privilegiado (super) pode definir o nome da máquina para um novo, fornecendo-o como argumento (por exemplo, hostname new-host
).
ifconfig
Utilizar ifconfig
para exibir os detalhes de configuração da rede para as interfaces no sistema atual quando executado sem nenhum argumento (ou seja, ifconfig
). Ao fornecer o comando com o nome de uma interface (ex. eth0
ou lo
) você pode então alterar a configuração: verifique a página do manual para mais detalhes.