Comandos sobre como excluir uma primeira linha de um arquivo de texto usando shell de bash

Comandos sobre como excluir uma primeira linha de um arquivo de texto usando shell de bash

Nesta curta configuração, mostraremos várias opções sobre como remover uma primeira linha de um arquivo de texto. Aqui está o conteúdo do nosso arquivo de amostra.TXT.

$ CAT FILE.txt line1 line2 line3 line4 


Podemos usar um sed comando para remover uma primeira linha do arquivo acima:

$ sed '1d' arquivo.txt line2 line3 line4 

O exposto acima produzirá robusto, portanto, você precisará redirecionar Stout para um novo arquivo:

$ sed '1d' arquivo.txt> myNewFile.TXT 

ou uso -eu Opção para alterar o arquivo no local:

$ sed -i '1d' arquivo.TXT $ CAT FILE.txt line2 line3 line4 

Outra opção para remover uma primeira linha do arquivo é usando cauda comando:

$ Tail -N Arquivo +2.txt line2 line3 line4 

Mais uma vez use o redirecionamento do stdout para formar um novo arquivo sem uma primeira linha. No entanto, outro exemplo de como remover uma primeira linha de um arquivo de texto é usar ed editor de texto:



$ CAT FILE.txt line1 line2 line3 line4 $ printf "%s \ n" 1d w q | arquivo ed.TXT 24 18 $ CAT FILE.txt line2 line3 line4 

O que aconteceu é que usamos printf comando para produzir excluir (1d), salvar (w) e desistir (q) comandar e tubá -los para ed comando. No exemplo seguinte, removemos uma primeira linha do arquivo usando vi editor de texto:

$ CAT FILE.txt line1 line2 line3 line4 $ vi -c ': 1d' -c ': wq' arquivo.txt ou melhor $ ex -c ': 1d' -c ': arquivo wq'.TXT $ CAT FILE.txt line2 line3 line4 

As opções de como remover uma primeira linha de um arquivo continuam se acumulando. Aqui usamos um Awk comandar o faça a mesma coisa:

$ CAT FILE.txt line1 line2 line3 line4 $ awk 'nr> 1 print' arquivo.txt line2 line3 line4 


Terminaremos com um exemplo sobre como remover uma linha FISRT de todos os arquivos em seu diretório:

$ ls file1.txt file2.TXT 

Temos que arquivos localizados em nosso diretório de trabalho atual. Cada arquivo contém 4 linha:

$ grep line * file1.txt: line1 file1.txt: line2 file1.txt: line3 file1.txt: line4 file2.txt: line1 file2.txt: line2 file2.txt: line3 file2.TXT: Linha4 

Podemos usar um loop for para remover uma primeira linha de cada arquivo:

$ para i em $ (arquivo ls*.TXT ); faça sed -i '1d' $ i; feito $ grep line * file1.txt: line2 file1.txt: line3 file1.txt: line4 file2.txt: line2 file2.txt: line3 file2.TXT: Linha4 

Tutoriais do Linux relacionados:

  • Como montar a imagem ISO no Linux
  • Arquivos de configuração do Linux: os 30 primeiros mais importantes
  • Xargs com vários threads com exemplos
  • Mastering Bash Script Loops
  • Como se conectar a um servidor FTP usando o Python
  • Como anexar o arquivo na linha de comando Bash Shell
  • Como configurar um servidor OpenVPN no Ubuntu 20.04
  • Como excluir o arquivo no Ubuntu Linux
  • Baixe o arquivo do URL no Linux usando a linha de comando
  • Como abrir arquivos ISO no Ubuntu Linux