Pular para o conteúdo
Waldo Eller | Cloud/DevOps: início
Voltar para Trilha: Linux Essentials
Linux

Dia 10/30 — Criando, Copiando, Movendo e Removendo Arquivos

Hoje é o **Dia 10 do desafio de 30 dias estudando Linux**, com foco na certificação **Linux Essentials

Publicado em

5 min de leitura
Capa do artigo Dia 10/30 — Criando, Copiando, Movendo e Removendo Arquivos

Hoje é o Dia 10 do desafio de 30 dias estudando Linux, com foco na certificação Linux Essentials — LPI 010-160 e na construção de uma base prática para atuar com Suporte Técnico em TI.

Hoje o foco é manipular o sistema de arquivos com segurança. São comandos simples, porém aparecem continuamente no trabalho real e podem causar perda de dados se usados sem atenção.

📌 Metodologia do projeto:
Teoria → Exercício → Prática → Explicar → Revisar


🎯 Objetivos do dia

  • Objetivo LPI: 2.4 — Criando, Movendo e Deletando Arquivos
  • Peso no exame: 2
  • Entender o conceito, executar os comandos no terminal e saber explicar o motivo de cada resultado.
  • Relacionar o conteúdo da prova com situações reais de suporte Linux.

💻 Ambiente recomendado: Debian/Ubuntu em máquina virtual ou máquina de estudos.
Evite praticar comandos destrutivos como rm e alterações administrativas no seu sistema principal.


🚀 UPLinux.com.br - prática complementar

Durante esta jornada, uso a plataforma UP Linux para revisar questões e executar desafios práticos:

👉 https://uplinux.com.br

Use a plataforma depois da leitura para reforçar o conteúdo com repetição espaçada e exercícios.


🧠 TEORIA

1. Linux diferencia maiúsculas de minúsculas

arquivo.txt
Arquivo.txt
ARQUIVO.txt

Para Linux, são três nomes diferentes.

2. Criando arquivos e diretórios

touch arquivo.txt
mkdir projetos
mkdir -p empresa/clientes/ativos

touch cria um arquivo vazio quando ele ainda não existe. Se o arquivo existir, atualiza seus timestamps.

3. Copiando com cp

cp origem.txt destino.txt
cp arquivo.txt /tmp/
cp -i arquivo.txt destino.txt
cp -v arquivo.txt destino.txt
cp -r pasta/ copia-da-pasta/
  • -i pergunta antes de sobrescrever;
  • -v mostra o que está sendo feito;
  • -r copia diretórios recursivamente.

4. Movendo e renomeando com mv

O mesmo comando faz duas tarefas:

mv antigo.txt novo.txt       # renomeia
mv relatorio.txt documentos/ # move

5. Removendo com rm e rmdir

rm arquivo.txt
rm -i arquivo.txt
rmdir pasta-vazia
rm -r pasta-com-conteudo/

⚠️ Atenção: rm não possui uma lixeira padrão no terminal. O arquivo pode ser removido imediatamente. Durante o aprendizado, prefira rm -i e trabalhe dentro de ~/linux-lab.

6. Globbing

O shell expande padrões antes de executar o comando.

Padrão Significado
* zero ou mais caracteres
? exatamente um caractere
[abc] um caractere entre os listados
[0-9] um dígito no intervalo

Exemplos:

ls *.txt
ls foto?.jpg
ls relatorio[1-3].txt

7. Aspas importam

touch "Relatorio Final.txt"
cp "Relatorio Final.txt" backup/

Sem aspas, o shell interpretaria os espaços como separadores de argumentos.


💻 PRÁTICA GUIADA

Laboratório seguro

mkdir -p ~/linux-lab/dia10/{origem,destino,backup}
cd ~/linux-lab/dia10/origem

touch cliente1.txt cliente2.txt cliente3.txt
touch foto1.jpg foto2.jpg fotoA.jpg
touch "Relatorio Final.txt"

ls -la

Copie seletivamente:

cp *.txt ../destino/
ls ../destino

Observe: o arquivo com espaços também termina em .txt, portanto será incluído pelo glob.

cp -v foto?.jpg ../backup/
ls ../backup

Agora renomeie e mova:

mv cliente1.txt cliente-principal.txt
mv cliente-principal.txt ../destino/
ls
ls ../destino

Teste rmdir:

mkdir pasta-vazia
rmdir pasta-vazia
mkdir pasta-cheia
touch pasta-cheia/teste.txt
rmdir pasta-cheia

O último comando deve falhar porque rmdir remove apenas diretórios vazios.


✏️ EXERCÍCIOS

  1. Crie ~/linux-lab/dia10/desafio e dentro dele cinco arquivos log1.txt até log5.txt.
  2. Copie apenas log1.txt, log2.txt e log3.txt usando globbing.
  3. Renomeie log5.txt para log-final.txt.
  4. Crie um arquivo chamado dados importantes.txt e copie-o corretamente usando aspas.
  5. Tente remover um diretório não vazio com rmdir e explique o erro.
  6. Use rm -i para remover um arquivo e observe a confirmação.

🗣️ EXPLICAR COM SUAS PALAVRAS

Explique:

  • Por que cp pasta destino/ falha sem -r?
  • Como mv consegue tanto mover quanto renomear?
  • Qual o risco de executar rm -r no diretório errado?
  • Qual a diferença entre * e ??
  • Por que Arquivo.txt e arquivo.txt podem coexistir?

🧪 MINI SIMULADO

1. Qual comando cria um arquivo vazio?

✅ touch.

2. Qual opção de cp permite copiar diretórios?

✅ -r (recursivo).

3. Qual comando renomeia a.txt para b.txt?

✅ mv a.txt b.txt.

4. rmdir remove diretórios com arquivos dentro?

✅ Não. Ele remove diretórios vazios.

5. O padrão *.log seleciona o quê?

✅ Nomes que terminam em .log.

6. foto?.jpg corresponde a foto12.jpg?

✅ Não. ? representa exatamente um caractere.

7. Qual opção ajuda a evitar sobrescrita acidental?

✅ -i.

8. Linux diferencia maiúsculas de minúsculas em nomes de arquivos?

✅ Sim.


✅ CHECKLIST DO DIA

  • Sei usar touch, mkdir, cp, mv, rm e rmdir
  • Sei copiar diretórios com cp -r
  • Sei usar -i para reduzir riscos
  • Entendo case sensitivity
  • Sei usar *, ? e classes simples como [0-9]
  • Sei manipular nomes com espaços usando aspas
  • Não uso rm -rf sem entender exatamente o caminho alvo

📅 Próximo passo — Dia 11

No próximo dia: Revisão completa do Tópico 2 + laboratório de suporte.


📚 Referências

Regra da jornada: não apenas leia os comandos. Digite, observe a saída, provoque erros controlados e tente explicar o comportamento antes de consultar a resposta.

Gostou da leitura?

Conecte-se comigo para acompanhar novas publicações e debater tecnologia.

Entrar em contato