Terminal no Linux: Manipulação de Arquivos

Nicole Wirtzbiki
21 Tech
Published in
6 min readDec 16, 2021

Comandos Básicos para Manipular Arquivos pelo Terminal

Photo by Gabriel Heinzer on Unsplash

Aqui nós iremos dar uma olhada em alguns comandos para Manipulação de Arquivos pelo Terminal no Linux.

Se você caiu de paraquedas aqui, dê primeiro uma olhada nesse nosso outro artigo Primeiros Passos: Terminal no Linux. Nele você vai encontrar os comandos básicos de navegação.

1. Criar um Novo Arquivo

Primeiro, vamos rever como criar um novo arquivo:

Para criar um novo arquivo em branco no diretório onde você está, você vai utilizar o comando touch, seguido pelo nome que dará ao arquivo.

$ touch <nome do novo arquivo>

Por exemplo, para criar um arquivo em branco chamado new_file: touch new_file.

Se quiser criar um arquivo em branco em um diretório diferente, é só colocar o endereço completo do diretório de destino, com o nome do arquivo no final. Por exemplo: touch /home/username/Documents/Webfile.html

Uma outra forma de criar um novo arquivo é usando o comando cat. Digamos que você quer criar um novo arquivo de estilo em CSS chamado style, então você digitará:

$ cat > style.css

Mas esse arquivo não será automaticamente em branco. Assim que você pressionar o enter, tudo o que você escrever em seguida entrará como o conteúdo do seu arquivo. Para sair, é só digitar Ctrl + C. Então, você poderá visualizar o conteúdo do arquivo que você criou digitando novamente cat seguido do nome do arquivo.

Se você não colocar nenhuma extensão na hora de criar seu arquivo, ele será será criado como um arquivo de texto.

2. Editar o Conteúdo de um Arquivo

Para editar um arquivo de texto que você criou, use o comando nano. Basta digitar esse comando seguido pelo nome do arquivo, e será aberta uma nova tela com a visualização do arquivo.

$ nano <nome do arquivo>

Aqui estão alguns comandos para navegar no nano (também ficam no rodapé do programa):

  • Ctrl+G — — — Abre Ajuda / Help
  • Ctrl+X — — — Sair da edição do arquivo
  • Ctrl+O — — — Salva o arquivo
  • Ctrl+J — — — Justifica o texto da linha atual
  • Ctrl+R — — — Ler arquivo para inserção
  • Ctrl+W — — — Localizar texto
  • Ctrl+Y — — — Posiciona na página anterior
  • Ctrl+V — — — Posiciona na página posterior
  • Ctrl+K — — — Recorta Texto
  • Ctrl+U — — — Cola Texto
  • Ctrl+C — — — Mostra a posição atual (linha/coluna)
  • Ctrl+T — — — Checagem ortográfica (se tiver plugins instalados)

Se você quiser somente mover alguns dados para o arquivo, pode usar o comando echo. Digite o comando seguido pelo texto que deseja adicionar ao final do arquivo (sem aspas!), seguido por dois símbolos maior que (>>) e o nome do arquivo.

$ echo <texto> >> <nome do arquivo>

Por exemplo, se digitarmos: echo Olá, meu nome é Nicole >> new_file.txt, estamos adicionando o texto “Olá, meu nome é Nicole” na última linha do arquivo new_file.txt.

3. Juntar Arquivos

Para juntar dois arquivos, usaremos o cat da seguinte forma: digite cat seguido do nome do primeiro e do segundo arquivos separado por um espaço, depois o símbolo maior que (>) e enfim o nome do arquivo a ser criado com a junção dos dois primeiros.

$ cat <nome do arquivo 1> <nome do arquivo 2> > <nome do arquivo concatenado>

Lembre-se que é necessário colocar a extensão no nome do arquivo. Ele contatenará o arquivo 1 e 2, armazenando a saída deles em um novo arquivo 3. Os arquivos 1 e 2 não serão apagados nem modificados, apenas um novo arquivo 3 será criado com o conteúdo da 1 e 2 concatenados.

4. Procurar uma Palavra Dentro de um Arquivo

Com o comando grep é possível buscar por uma palavra dentro do texto de um arquivo específico.

$ grep <palavra> <nome do arquivo>

Digite, por exemplo: grep aprovado notas.txt, para buscar a palavra aprovado no arquivo notas.txt.

5. Ler o Começo ou o Final de um Arquivo

Podemos ler as primeiras ou últimas linhas de um arquivo específico com os comandos head:

$ head <nome do arquivo>

e tail:

$ tail <nome do arquivo>

Por padrão, eles mostrarão as 10 primeiras ou últimas linhas, mas essa quantidade pode ser modificada por qualquer outra, é só acrescentar antes do nome do arquivo o argumento -n seguido pelo número de linhas que deseja visualizar. Por exemplo: head -n 5 nomedoarquivo.txt, para ver somente 5 linhas. O mesmo raciocínio se aplica ao tail.

6. Comparar Conteúdo de Arquivos

Com o comando diff (abreviação de difference), é possível comparar o conteúdo de dois arquivos, linha por linha.

$ diff <nome do primeiro arquivo> <nome do segundo arquivo>

Esse comando irá retornar as linhas que não são comuns entre os dois arquivos.

7. Ver o Tamanho de um Arquivo ou Diretório

Para verificar quanto espaço um arquivo ou diretório ocupa, digite o comando du (abreviação para disk usage). Para ver esse tamanho em bytes, KBs ou MBs, use o argumento -h.

$ du -h <endereço da pasta ou arquivo>

Use o comando df para obter uma resposta da quantidade de espaço de disco usado no seu sistema. Esse valor será mostrado em KBs. Se você ver os resultados em MBs, digite df -m.

$ df

8. Localizar um Arquivo

Existem dois comandos diferentes para realizar buscas no terminal: o find e o locate.

Vamos começar pelo find. A estrutura básica dele é a seguinte:

$ find <primeiro argumento> <segundo argumento> <termo de busca>

Com o find, você pode procurar por um nome do arquivo, tipo, data de criação ou modificação ou até mesmo por tamanho. Você só vai precisar colocar dois argumentos antes para poder configurar como será feita sua busca.

O primeiro argumento indica a partir de qual diretório você quer iniciar sua busca. Você pode digitar o endereço de um diretório específico se tiver uma idéia de onde o arquivo está localizado, ou se quiser fazer uma busca por todo o sistema, é só digitar somente uma barra (/), que é o sinal para todo o diretório raiz. Já se você quiser buscar a partir do diretório no qual você se encontra, digite um ponto (.)

O segundo argumento indica qual filtro você usará para buscar seu arquivo (nome, tipo, data, etc).

Para procurar pelo NOME, digite -name, seguido pelo termo de busca, que nesse caso será o nome do arquivo, entre aspas (“”). Por exemplo: find . -name “meu-arquivo”. Aqui estamos procurando um arquivo chamado meu-arquivo no diretório atual. Se não quiser distinção entre maiúsculas e minúsculas, digite -iname, o que é ótimo quando você não sabe exatamente o nome do arquivo. Você pode também procurar apenas por arquivos de uma extensão específica, por exemplo: find . -name “*.txt”, para listar todos os arquivos .txt iniciando pela pasta atual.

Você também pode procurar por TIPO. Você irá digitar -type seguido de uma das seguintes opções:

  • f — arquivo normal
  • d — diretório ou pasta
  • l — link simbólico
  • c — dispositivos de caracteres
  • b — dispositivos bloqueados

Por exemplo, se digitarmos: find / -type d, serão listados todos os diretórios presentes no seu sistema, pois começamos a busca no diretório raiz utilizando o sinal /. Se quisermos buscar um diretório específico pelo nome, é só digitarmos: find / -type d -name “minha-pasta”.

O find é um comando que possui muitas possibilidades de configurações de procura, e você pode ler sobre todas elas mais detalhadamente nesse artigo da Hostinger Tutoriais.

Existe também um outro comando para realizar buscas que, diferente do find, precisa ser instalado antes de utilizar. É o locate. A vantagem dele é a maior velocidade e praticidade na busca.

$ locate <termo de busca>

Você também pode utilizar o argumento -i após esse comando para que se torne insensível a caracteres, maiúsculas ou minúsculas, o que é ótimo quando você não sabe exatamente o nome do arquivo. Utilize também o asterisco (*) quando procurar um arquivo com duas ou mais palavras, por exemplo: locate -i notas*alunos para encontrar os arquivos que tenham as palavras “notas” e “alunos”.

Para instalar o locate, execute o seguinte comandos no seu terminal para baixar esse pacote:

$ sudo apt-get install mlocate

E depois, para atualizar o banco de dados do sistema:

$ sudo apt-get update

E é isso por hoje! Esse foi um resumo de comandos um pouco mais específicos para manipular arquivos, esperamos que possam ser úteis pra vocês.

Até a próxima!

--

--

Nicole Wirtzbiki
21 Tech
Writer for

Hi, I'm Nicole :) ● Master in Data Science and AI ● Architect and Urbanist ● ’21 Tech’Blog ●