Gerenciando arquivos com o Shell

Este é o segundo de uma série, que visa a ser uma porta de entrada para o mundo GNU/Linux. Neste artigo, serão abordados os tópicos: comandos básicos para gerenciamento de arquivos, processando e filtrando arquivos de texto, expressões regulares e o editor Vi.

[ Hits: 18.845 ]

Por: rafael silveira gomes em 30/04/2014


Processando e filtrando arquivos de texto



Trabalhar com arquivos de texto, é fundamental para utilização do GNU/Linux. Pois, é através destes arquivos que fazemos a configuração e personalização do sistema, mesmo quando configuramos algo em modo gráfico, o que está sendo feita na verdade, é a modificação destes arquivos de texto.

Agora que conhecemos a importância de saber trabalhar com arquivos de texto, vamos ao trabalho:

Os comandos head e tail:

Estes comandos são utilizados para mostrar na tela, uma parte determinada pelo usuário de arquivos de texto. Os comandos head e tail mostram, respectivamente, o início e o final do arquivo. Caso não seja especificado a quantidade de linhas, ambos mostram 10 linhas.

1. Visualizar arquivo com head:

head -n X    # Sendo X um número inteiro

2. Visualizar arquivo com tail:

tail -n X    # Sendo X um número inteiro


Os comandos cat e tac:

Estes comandos são utilizados para concatenar (encadear) o conteúdo de arquivos de texto. O comando cat mostra o conteúdo na ordem normal (da primeira até a última linha). O comando tac, mostra o conteúdo na ordem inversa (da última para a primeira linha).

1. Concatenar arquivos com cat:

cat arquivo

2. Concatenar arquivos com tac:

tac arquivo


O comando split:

Este comando é utilizado para dividir um arquivo em dois, ou mais arquivos menores. Por padrão, se nenhuma opção for informada, divide o arquivo em arquivos com 1000 linhas cada.

Exemplos comuns de seu uso, são:

1. Dividir um arquivo em arquivos de X linhas:

split -l X arquivo    # Sendo X um número inteiro

2. Dividir um arquivo em arquivos de X bytes:

split -b X arquivo    # Sendo X um número inteiro


Os comandos expand e unexpand:

Estes comandos são muito úteis para programadores, são utilizados para indentar um arquivo de texto. O comando expand converte "TABs" para "espaços em branco" e o comando unexpand, converte "espaços em branco" para "TABs".

Suas sintaxes são:

1. Indentando com expand:

expand -t X arquivo    # Sendo X o número de espaços que substitui o TAB

2. Indentando com unexpand:

unexpand -t


O comando sort:

O comando sort é utilizado mostrar na tela, em ordem alfabética, o conteúdo de um ou mais arquivos de texto.

Sua sintaxe é:

sort arquivo

Página anterior     Próxima página

Páginas do artigo
   1. Comandos básicos para gerenciamento de arquivos
   2. Processando e filtrando arquivos de texto
   3. Expressões regulares
   4. O editor vi
Outros artigos deste autor

Gerenciando Processos com o Shell

Introdução ao Shell

Gerenciamento de Discos com o Shell

Leitura recomendada

Introdução ao Gentoo Linux

Instalação do Driver ATI Radeon XPRESS 200 no Ubuntu 16.04

Ubuntu - Manual do Iniciante

Entendendo como realizar busca de arquivos no Linux com "find" e "locate"

Guia Introdutório do Linux VI

  
Comentários
[1] Comentário enviado por dimasdaros em 01/05/2014 - 20:05h

Artigo que deveria ser lido por todos que usam Linux, especialmente iniciantes, com os assuntos tratados já da para se virar bem com o terminal.
Bom artigo @rsilveiragomes

Só uma pergunta sobre o "cd $PLDPWD", funcionamento dele pelo que notei aqui é semelhante ao "cd -", que volta para o diretório anterior.
Sabe qual a diferença?

Grande abraço.
Até mais


[2] Comentário enviado por rsilveiragomes em 01/05/2014 - 21:14h

dimasdaros >>>

Obrigado pelo feedback :)
A minha idéia é essa mesmo fazer com que os iniciantes aprendam a caminhar com as próprias pernas (igual eu estou aprendendo).

Agora sobre a sua dúvida:

O comando: "cd $OLDPWD" volta para o diretório anterior através do valor guardado na variável OLDPWD (esta variável guarda sempre o endereço do último diretório acessado).

O comando "cd -" volta para o diretório anterior e mostra na tela qual é este diretório. Ou seja, "cd -" equivale a um "cd $OLDPWD" + "pwd".

entendeu ?

[3] Comentário enviado por dimasdaros em 01/05/2014 - 21:20h


[2] Comentário enviado por rsilveiragomes em 01/05/2014 - 21:14h:

dimasdaros >>>

Obrigado pelo feedback :)
A minha idéia é essa mesmo fazer com que os iniciantes aprendam a caminhar com as próprias pernas (igual eu estou aprendendo).

Agora sobre a sua dúvida:

O comando: "cd $OLDPWD" volta para o diretório anterior através do valor guardado na variável OLDPWD (esta variável guarda sempre o endereço do último diretório acessado).

O comando "cd -" volta para o diretório anterior e mostra na tela qual é este diretório. Ou seja, "cd -" equivale a um "cd $OLDPWD" + "pwd".

entendeu ?


Compreendi sim, realmente quado testei aqui teve essa diferença, mas nem dei atenção à ela.
Brigadão pelo esclarecimento (y)

[4] Comentário enviado por albfneto em 02/05/2014 - 19:35h

conheço, mas favoritei. Dica muito boa para todos os Iniciantes!
Parabéns!

sugiro que cite a primeira parte, nos comentários, para loalizar mais fácilmente. Cada parte da série que fizer, cite as anteriores.

[5] Comentário enviado por rsilveiragomes em 02/05/2014 - 20:08h


[4] Comentário enviado por albfneto em 02/05/2014 - 19:35h:

conheço, mas favoritei. Dica muito boa para todos os Iniciantes!
Parabéns!

sugiro que cite a primeira parte, nos comentários, para loalizar mais fácilmente. Cada parte da série que fizer, cite as anteriores.


É.. bem pensado isso kkk
Só que agora não consigo mais editar o artigo (ou consigo ?).. vou implementar a dica nos próximos ;)
Valeu !

[6] Comentário enviado por albfneto em 03/05/2014 - 13:43h

vc pode citar a parte 1 aqui mesmo, nos comentários, mas se quiser, me forneça o link e o texto, o que queria colocar na edição e onde colocar (em que ponto do artigo) que eu edito para você, sou um dos Moderadores.


[8] Comentário enviado por marbreu em 30/06/2014 - 20:26h

muito bom este artigo, vç deveria condensar seus outros artigos em um só, ajudaria muita gente que esta iniciando e consultas p/os mais experientes.

[9] Comentário enviado por rsilveiragomes em 01/07/2014 - 11:59h

marbreu >> eu iria fazer um só mas iria ficar meio grande.. e daí como não tenho muito tempo livre.. fui postando conforme terminei as 'partes'.. pq queria ter um feedback também :P

Quando eu acabar todas as 'partes' que pensei em escrever, dependendo do tamanho, deleto os artigos soltos e faço um novo post único x)

[10] Comentário enviado por marbreu em 06/07/2014 - 13:23h

Valeu belo post e abçs....


Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts