Introdução
Boas-vindas ao laboratório de operações básicas com arquivos no Linux! No Linux, quase tudo é tratado como um arquivo, por isso as operações com arquivos são fundamentais para usar o sistema. Neste laboratório, você aprenderá os comandos mais comuns para gerenciar arquivos e diretórios, desenvolvendo mais habilidade para navegar e organizar seu sistema Linux.
Entendendo seu ambiente de trabalho
No Linux, cada usuário normalmente tem um "diretório pessoal", representado por ~. No entanto, neste ambiente de laboratório, você começará no diretório /home/labex/project, que é o diretório de trabalho padrão.
Primeiro, abra um terminal na área de trabalho OU mude para a aba do terminal no ambiente do laboratório.

Comece verificando sua localização atual:
pwd
pwd significa "print working directory" (exibir diretório de trabalho). Ele mostra sua localização atual no sistema de arquivos. Esse comando é essencial para você se orientar na estrutura de arquivos do Linux. A saída deve ser /home/labex/project.
Agora, examine a relação entre o diretório atual e o diretório pessoal:
echo ~
Observação: se você não conseguir digitar o símbolo
~no terminal da área de trabalho devido a diferenças de layout do teclado em alguns países, tente mudar para a aba independente Terminal, no canto superior esquerdo da interface da máquina virtual.
Esse comando exibe o caminho do seu diretório pessoal, que deve ser /home/labex.
Para ver o conteúdo do diretório atual, use:
ls
Esse comando lista os arquivos e diretórios do seu diretório de trabalho atual (/home/labex/project).
Verifique também o conteúdo do seu diretório pessoal:
ls ~
Esse comando lista o conteúdo do seu diretório pessoal, que pode ser diferente do diretório de trabalho atual.
Entender a diferença entre o diretório de trabalho atual e o diretório pessoal é importante para navegar pelo sistema de arquivos do Linux com eficiência.
Navegando pelo sistema de arquivos
O Linux usa o que chamamos de "sistema de arquivos hierárquico". Pense nele como uma grande árvore com vários galhos. O tronco principal é o "diretório raiz", representado por uma única barra /. Todos os outros diretórios e arquivos partem dessa raiz.
Explore como se deslocar por essa estrutura semelhante a uma árvore:
- Verifique sua localização atual:
pwd
A saída deve mostrar /home/labex/project. Se isso não acontecer, talvez você esteja em outro diretório. Use cd /home/labex/project para voltar ao ponto inicial.
- Veja o conteúdo do diretório atual:
ls
Esse comando lista todos os arquivos e diretórios da sua localização atual. /home/labex/project está vazio, portanto você não verá nenhum item.
- Suba um nível até o diretório pai:
cd ..
O .. significa "o diretório acima". Depois desse comando, execute pwd novamente. Agora, você deve estar em /home/labex.
- Volte ao diretório do projeto:
cd project
Esse comando leva você de volta para /home/labex/project.
- Vá para o diretório pessoal:
cd ~
O ~ é um atalho para o diretório pessoal. Execute pwd para confirmar que você está em /home/labex.
- Volte ao diretório do projeto usando um caminho absoluto:
cd /home/labex/project
Isso é chamado de "caminho absoluto" porque começa na raiz (/) e informa o local completo.
Criando arquivos e listando o conteúdo de diretórios
Agora que você sabe navegar, crie alguns arquivos e explore como listar o conteúdo de diretórios.
Primeiro, confirme que você está no diretório /home/labex/project:
cd /home/labex/project
- Crie alguns arquivos:
touch file1.txt
O comando touch cria um arquivo vazio. Se o arquivo já existir, ele atualiza o carimbo de data e hora do arquivo sem alterar seu conteúdo. É uma forma simples de criar arquivos novos e vazios.
echo "Hello, Linux" > file2.txt
Esse comando realiza duas ações:
echoé um comando que exibe texto.- O símbolo
>redireciona a saída deechopara um arquivo chamadofile2.txt. Se o arquivo não existir, ele será criado. Se já existir, seu conteúdo será substituído.
echo "Hidden file" > .hiddenfile
Esse comando cria um arquivo oculto. No Linux, qualquer nome de arquivo ou diretório que comece com um ponto (.) é considerado oculto.
- Agora, crie um diretório:
mkdir testdir
O comando mkdir (abreviação de "make directory", criar diretório) cria um novo diretório chamado testdir.
- Listagem básica:
ls

Esse comando mostra o conteúdo do diretório atual. Você deve ver file1.txt, file2.txt e testdir.
- Listagem detalhada:
ls -l
A opção -l (a letra L minúscula, não o número 1) fornece uma listagem em formato "longo". Você verá detalhes adicionais, como permissões do arquivo, proprietário, tamanho e data de modificação.
- Mostre os arquivos ocultos:
ls -a
Esse comando mostra todos os arquivos, incluindo o arquivo oculto .hiddenfile que você criou.
- Combine opções:
ls -la
Esse comando combina o formato longo (-l) com a exibição de todos os arquivos (-a).
- Liste o conteúdo de um diretório específico:
ls -l testdir
Esse comando lista o conteúdo do diretório testdir, que deve estar vazio neste momento.
Os comandos de listagem desta etapa servem para praticar e confirmar visualmente o resultado. Seu progresso será avaliado verificando se os arquivos e o diretório necessários foram criados corretamente.
Copiando arquivos e diretórios
Agora que temos alguns arquivos para trabalhar, aprenda a copiá-los:
- Copie um arquivo:
cp file1.txt file1_copy.txt
Esse comando cria, no diretório atual, uma cópia de file1.txt chamada file1_copy.txt.
Confirme a cópia:
ls
- Copie um arquivo para outro diretório:
cp file2.txt testdir/
Esse comando copia file2.txt para o diretório testdir.
- Copie um diretório:
cp -r testdir testdir_copy
A opção -r significa "recursivo". Ela é necessária para copiar diretórios e garantir que todo o conteúdo seja copiado.
- Confirme as cópias:
ls
ls testdir
ls testdir_copy

Movendo e renomeando arquivos e diretórios
No Linux, o comando mv é usado tanto para mover quanto para renomear:
- Renomeie um arquivo:
mv file1.txt newname.txt
Esse comando renomeia file1.txt para newname.txt.
- Mova um arquivo para um diretório:
mv newname.txt testdir/
Esse comando move newname.txt para o diretório testdir.
- Renomeie um diretório:
mv testdir_copy new_testdir
Esse comando renomeia testdir_copy para new_testdir.
- Mova e renomeie em um único comando:
mv testdir/newname.txt ./original_file1.txt
Esse comando move newname.txt para fora de testdir e o renomeia como original_file1.txt no diretório atual.
- Confirme as alterações:
ls
ls testdir

Removendo arquivos e diretórios
Remover arquivos e diretórios é uma operação poderosa. Diferentemente das interfaces gráficas, a linha de comando geralmente não tem uma "Lixeira". As exclusões feitas com rm normalmente são permanentes. Sempre confira os comandos antes de executá-los!
Agora, limpe os arquivos e diretórios que você criou. Confirme que está no diretório /home/labex/project.
pwd
ls -a
Você deve ver arquivos como original_file1.txt, .hiddenfile e file2.txt, além de diretórios como testdir e new_testdir.
.
..
.hiddenfile
file1_copy.txt
file2.txt
new_testdir
original_file1.txt
testdir
Remova um único arquivo:
rm original_file1.txtO comando
rm(abreviação de "remove", remover) exclui arquivos. Confira o resultado:lsoriginal_file1.txtnão deve mais aparecer.Remova de forma interativa (mais seguro):
Tente remover
file2.txt, desta vez usando a opção interativa-i:rm -i file2.txtA opção
-isolicita sua confirmação antes de excluir cada arquivo. Digitey(de yes, sim) e pressione Enter para confirmar a exclusão. Se você digitarnou qualquer outro valor, o arquivo não será excluído.lsSe você confirmou a exclusão,
file2.txtnão deve mais aparecer.Veja o que acontece com um diretório que não está vazio:
Lembre-se de
new_testdir, criado quando você renomeoutestdir_copy. Ele ainda contém a cópia defile2.txt, portantormdirfalhará. Primeiro, confirme o conteúdo:ls new_testdirVocê deve ver
file2.txt. Agora, tente usarrmdir:rmdir new_testdirrmdir(remove directory, remover diretório) só funciona com diretórios vazios.lsnew_testdirnão pode ser removido porque não está vazio, portanto ainda deve aparecer na listagem.Tente remover um diretório que não está vazio:
Agora, tente usar
rmdiremtestdir, que ainda contémfile2.txt(copiado na Etapa 4):ls testdir rmdir testdirVocê provavelmente verá uma mensagem de erro semelhante a
rmdir: failed to remove 'testdir': Directory not empty. Isso é esperado, porquermdirnão consegue remover diretórios que contêm arquivos ou outros diretórios.Remova um diretório e seu conteúdo (recursivamente):
Para remover um diretório que não está vazio, use
rmcom a opção-r(recursiva):rm -r testdirEsse comando remove o diretório
testdire tudo o que estiver dentro dele. Use-o com cuidado.lstestdirnão deve mais aparecer.Remoção forçada (use com extrema cautela):
Às vezes, pode ser necessário remover arquivos sem receber uma confirmação, mesmo que estejam protegidos contra gravação (embora não haja nenhum arquivo assim neste laboratório). A opção
-f(forçar) faz isso.Remova o arquivo oculto:
rm .hiddenfile ls -aAgora, combine
-re-f. O comandorm -rfé extremamente poderoso e potencialmente perigoso. Ele remove diretórios recursivamente (-r) e força a remoção sem solicitar confirmação (-f).!!! ZONA DE PERIGO !!! Tenha ABSOLUTA CERTEZA do que está excluindo antes de executar
rm -rf. Um pequeno erro de digitação pode excluir arquivos importantes do sistema ou seus dados pessoais. Não há como desfazer a operação. Por exemplo,rm -rf /pode tentar excluir todo o sistema (se você tiver as permissões necessárias). Sempre confira o caminho.Crie um diretório e um arquivo temporários para fazer uma demonstração segura:
mkdir temp_dir touch temp_dir/temp_file.txt ls -R temp_dirObservação: talvez você tenha notado que usamos
-R(maiúsculo) comls, em vez de-r(minúsculo), como fizemos comcperm. Isso não é apenas uma diferença entre maiúsculas e minúsculas: são opções completamente diferentes! Parals,-Rsignifica "listagem recursiva" (listar subdiretórios), enquanto-rsignifica "ordem de classificação inversa". Paracperm, a opção recursiva é-r(minúsculo). Sempre consulte o manual (man command) para entender as opções específicas de cada comando.Agora, remova o diretório à força:
rm -rf temp_dirConfirme a remoção:
lstemp_dirnão deve mais aparecer.
Lembre-se: na linha de comando do Linux, os arquivos excluídos geralmente desaparecem para sempre. Use rm com cuidado!
Resumo
Parabéns! Você aprendeu as operações essenciais com arquivos no Linux:
- Navegar pelo sistema de arquivos com
cdepwd - Criar arquivos e diretórios com
touchemkdir - Listar conteúdo com
lse suas opções - Copiar arquivos e diretórios com
cp - Mover e renomear com
mv - Remover arquivos e diretórios com
rmermdir
Esses comandos formam a base do gerenciamento de arquivos no Linux. Com a prática, você se tornará capaz de gerenciar arquivos e diretórios pela linha de comando.
Lembre-se de usar esses comandos com cuidado, especialmente rm, pois ele exclui arquivos e diretórios permanentemente, sem possibilidade de recuperação.
À medida que continuar aprendendo Linux, consulte as páginas de manual, por exemplo, man ls, para conhecer melhor cada comando e suas opções. Boa exploração!



