Conhecendo Linux (comandos básicos)
Neste módulo, os estagiários aprenderão sobre o sistema operacional Linux e comandos básicos para navegação e gerenciamento de arquivos.
Aulas
Aula Curso em Vídeo
Curso de Linux - Primeiros Passos
Vídeos Diolinux
Aprenda os comandos básicos do Linux - Terminal Ubuntu
30 Comandos do Terminal Linux BÁSICOS que você PRECISA SABER para ser um HACKER
Desafios
Desafio 1: Introdução ao Linux
Objetivo: Aprender os fundamentos do sistema operacional Linux, sua história e as distribuições mais populares.
Tópicos a serem estudados:
- História do Linux: Origem, criação e desenvolvimento do sistema operacional Linux.
- Diferenças entre Linux e outros sistemas operacionais (Windows, macOS).
- Distribuições Linux: Conheça as distribuições mais populares, como Ubuntu, Debian, Fedora, Arch, entre outras, e suas principais características.
- Filosofia e comunidade Linux: Entenda a filosofia do software livre, a importância das contribuições da comunidade e o papel dos desenvolvedores no ecossistema Linux.
Atividades propostas:
- Pesquise e leia sobre a história do Linux e seu desenvolvimento ao longo do tempo.
- Faça uma comparação entre o Linux e outros sistemas operacionais, destacando suas principais diferenças e vantagens.
- Escolha três distribuições Linux populares e escreva um pequeno resumo sobre cada uma, destacando suas principais características, vantagens e desvantagens.
- Explore a filosofia do software livre e a importância das contribuições da comunidade para o desenvolvimento e evolução do Linux. Discuta como a comunidade e os desenvolvedores interagem e contribuem para o ecossistema Linux.
Este desafio ajudará o estagiário a entender os fundamentos do sistema operacional Linux, sua história e principais distribuições, além de fornecer uma base sólida para o aprendizado de habilidades mais avançadas no uso do Linux.
Desafio 2: Navegação no sistema de arquivos
Objetivo: Praticar a navegação no sistema de arquivos Linux usando comandos como cd
, ls
, pwd
e mkdir
.
Tópicos a serem estudados:
- Comando
cd
: Aprenda a mudar de diretório no terminal utilizando o comandocd
. - Comando
ls
: Conheça o comandols
para listar arquivos e diretórios. - Comando
pwd
: Utilize o comandopwd
para exibir o caminho do diretório atual. - Comando
mkdir
: Aprenda a criar novos diretórios com o comandomkdir
.
Atividades propostas:
- Abra o terminal do seu sistema Linux e pratique a navegação entre os diretórios utilizando o comando
cd
. Tente navegar até diretórios diferentes, como sua pasta de usuário, a pasta de documentos e a raiz do sistema. - Utilize o comando
ls
para listar os arquivos e diretórios presentes no diretório atual. Explore as opções do comandols
, como-l
(lista detalhada) e-a
(mostra arquivos ocultos). - Verifique o caminho do diretório atual utilizando o comando
pwd
. Preste atenção em como o caminho muda conforme você navega pelos diretórios com o comandocd
. - Crie novos diretórios utilizando o comando
mkdir
. Experimente criar diretórios dentro de outros diretórios e utilize o comandols
para confirmar a criação. Por exemplo, crie a seguinte hierarquia de diretórios:
projeto/
├── assets/
│ ├── css/
│ ├── js/
│ └── images/
└── src/
├── components/
└── views/
Para criar essa hierarquia, quais seriam os comandos utilizados? Experimente criar essa estrutura de diretórios no seu sistema Linux.
Desafio 3: Gerenciamento de arquivos e diretórios
Objetivo: Aprender a criar, copiar, mover e remover arquivos e diretórios com comandos como touch
, cp
, mv
e rm
.
Tópicos a serem estudados:
- Comando
touch
: Aprenda a criar arquivos vazios com o comandotouch
. - Comando
cp
: Conheça o comandocp
para copiar arquivos e diretórios. - Comando
mv
: Utilize o comandomv
para mover ou renomear arquivos e diretórios. - Comando
rm
: Aprenda a remover arquivos e diretórios com o comandorm
.
Atividades propostas:
- Abra o terminal do seu sistema Linux e pratique a criação de arquivos vazios utilizando o comando
touch
. Por exemplo, crie um arquivo chamadoexemplo.txt
no diretório atual. - Utilize o comando
cp
para copiar arquivos e diretórios. Por exemplo, copie o arquivoexemplo.txt
que você criou na atividade anterior para um novo arquivo chamadocopia_exemplo.txt
. Além disso, copie um diretório e seu conteúdo utilizando a opção-r
do comandocp
. - Aprenda a mover ou renomear arquivos e diretórios utilizando o comando
mv
. Por exemplo, mova o arquivocopia_exemplo.txt
para um diretório chamadoarquivos
e renomeie o arquivoexemplo.txt
paranovo_exemplo.txt
. - Pratique a remoção de arquivos e diretórios com o comando
rm
. Remova o arquivonovo_exemplo.txt
utilizando o comandorm
. Além disso, remova um diretório e seu conteúdo utilizando a opção-r
do comandorm
.
Observação: Tenha cuidado ao utilizar o comando rm
, pois a remoção de arquivos e diretórios é permanente e não pode ser desfeita.
Este desafio ajudará o estagiário a se familiarizar com o gerenciamento de arquivos e diretórios no sistema Linux, utilizando comandos básicos para criar, copiar, mover e remover arquivos e diretórios.
Desafio 4: Gerenciamento de permissões
Objetivo: Entender o sistema de permissões do Linux e aprender a alterar permissões e propriedade de arquivos e diretórios usando comandos como chmod
e chown
.
Tópicos a serem estudados:
- Permissões no Linux: Aprenda sobre o sistema de permissões no Linux, incluindo permissões de leitura, escrita e execução para o proprietário, grupo e outros usuários.
- Comando
chmod
: Conheça o comandochmod
para alterar as permissões de arquivos e diretórios. - Comando
chown
: Aprenda a utilizar o comandochown
para alterar a propriedade de arquivos e diretórios.
Atividades propostas:
- Estude o sistema de permissões no Linux e aprenda a identificar as permissões de um arquivo ou diretório utilizando o comando
ls -l
. - Crie um arquivo chamado
teste.txt
com o comandotouch
e verifique suas permissões atuais usandols -l
. - Utilize o comando
chmod
para alterar as permissões do arquivoteste.txt
. Por exemplo, remova a permissão de escrita para todos os usuários e adicione a permissão de execução para o proprietário. - Crie um diretório chamado
exemplo
e verifique suas permissões atuais com o comandols -l
. - Utilize o comando
chown
para alterar a propriedade do diretórioexemplo
. Por exemplo, altere o proprietário e o grupo para um usuário e grupo existentes no seu sistema.
Este desafio ajudará o estagiário a compreender o sistema de permissões no Linux e a utilizar comandos como chmod
e chown
para alterar permissões e propriedade de arquivos e diretórios.
Desafio 5: Utilização de pipes e redirecionamento
Objetivo: Aprender a usar pipes (|
) e redirecionamento (>
, >>
) para conectar e manipular a saída de comandos no Linux.
Tópicos a serem estudados:
- Pipes (
|
): Conheça o conceito de pipes e como usá-los para conectar a saída de um comando à entrada de outro. - Redirecionamento (
>
,>>
): Aprenda sobre redirecionamento e como direcionar a saída de um comando para um arquivo ou anexar à um arquivo existente.
Atividades propostas:
- Estude o conceito de pipes e redirecionamento no Linux e aprenda a utilizar os operadores
|
,>
e>>
. - Utilize pipes para conectar a saída de um comando à entrada de outro. Por exemplo, utilize o comando
ls
para listar os arquivos em um diretório e o comandogrep
para filtrar os arquivos que contêm uma determinada palavra. - Crie um arquivo chamado
saida.txt
e utilize o redirecionamento>
para direcionar a saída do comandols
para esse arquivo. - Execute novamente o comando
ls
com um argumento diferente (por exemplo,ls -l
) e utilize o redirecionamento>>
para anexar a saída ao arquivosaida.txt
sem sobrescrever o conteúdo original. - Pratique a combinação de pipes e redirecionamento. Por exemplo, liste os arquivos de um diretório, filtre-os com o comando
grep
e redirecione o resultado para um arquivo chamadofiltrado.txt
.
Este desafio ajudará o estagiário a compreender e utilizar pipes e redirecionamento no Linux, permitindo que manipule a saída de comandos de forma eficiente.
Desafio 6: Comandos de busca e manipulação de texto
Objetivo: Praticar comandos de busca e manipulação de texto como grep
, find
, sort
, cut
e awk
.
Tópicos a serem estudados:
grep
: Entenda o funcionamento do comandogrep
para filtrar e buscar por padrões em arquivos de texto.find
: Aprenda a usar o comandofind
para localizar arquivos e diretórios no sistema de arquivos.sort
: Descubra como utilizar o comandosort
para ordenar linhas de texto.cut
: Conheça o comandocut
e como usá-lo para remover seções de texto.awk
: Aprenda sobre o comandoawk
e como aplicá-lo para manipular e processar arquivos de texto.
Atividades propostas:
- Utilize o comando
grep
para encontrar todas as ocorrências de uma palavra específica em um arquivo de texto. - Use o comando
find
para localizar todos os arquivos com extensão.txt
em um diretório e seus subdiretórios. - Crie um arquivo de texto com várias linhas e utilize o comando
sort
para ordená-las alfabeticamente. - Com o mesmo arquivo de texto, utilize o comando
cut
para remover uma coluna específica de cada linha. - Aplique o comando
awk
para extrair informações específicas de um arquivo de texto, como a soma de uma coluna numérica.
Este desafio ajudará o estagiário a dominar os comandos de busca e manipulação de texto no Linux, permitindo que manipule e processe arquivos de texto de forma eficiente.
Desafio 7: Gerenciamento de processos
Objetivo: Aprender a gerenciar processos no Linux usando comandos como ps
, top
, kill
, nice
e renice
.
Tópicos a serem estudados:
ps
: Entenda o funcionamento do comandops
para exibir informações sobre os processos em execução.top
: Aprenda a usar o comandotop
para monitorar os processos em tempo real.kill
: Descubra como utilizar o comandokill
para encerrar processos.nice
: Conheça o comandonice
e como usá-lo para definir a prioridade de execução de um processo.renice
: Aprenda sobre o comandorenice
e como aplicá-lo para alterar a prioridade de um processo em execução.
Atividades propostas:
- Utilize o comando
ps
para listar todos os processos em execução no seu sistema. - Use o comando
top
para monitorar os processos em tempo real e identificar os que estão consumindo mais recursos. - Crie um processo em segundo plano e utilize o comando
kill
para encerrá-lo. - Inicie um processo com uma prioridade específica usando o comando
nice
. - Altere a prioridade de um processo em execução utilizando o comando
renice
.
Este desafio ajudará o estagiário a entender e gerenciar processos no Linux, permitindo que controle e otimize o uso dos recursos do sistema.
Desafio 8: Criação de Alias e funções básicas com Shell Script
Objetivo: Aprenda a criar aliases e funções básicas com Shell Script para facilitar o cotidiano.
Tópicos a serem estudados:
- Alias: Entenda como criar aliases para comandos no Linux e como eles podem simplificar seu trabalho diário.
- Funções básicas: Aprenda a criar funções básicas em Shell Script para automatizar tarefas e melhorar a eficiência.
- Shell Script: Conheça a sintaxe básica do Shell Script e como criar scripts para realizar tarefas comuns.
Atividades propostas:
- Crie um alias para um comando que você utiliza frequentemente. Por exemplo, um alias para o comando
ls -la
. - Desenvolva uma função básica em Shell Script que receba dois números como argumentos e calcule a soma deles.
- Crie um Shell Script simples que verifique a existência de um arquivo em um diretório específico e exiba uma mensagem personalizada.
- Adicione seus aliases e funções básicas ao arquivo de configuração do seu shell (por exemplo,
.bashrc
ou.zshrc
) para que sejam carregados automaticamente ao iniciar um novo terminal. - Peça ajuda a um líder técnico para aprimorar suas habilidades em Shell Script e entender boas práticas.
Este desafio ajudará o estagiário a se familiarizar com a criação de aliases e funções básicas em Shell Script, melhorando a eficiência no cotidiano e a capacidade de automatizar tarefas.