GNU/Linux >> Linux Esercitazione >  >> Linux

come copiare le righe da 10 a 15 di un file in un altro file, in unix?

In aggiunta alla risposta precedente, puoi utilizzare una delle seguenti 3 soluzioni.

sed

Stampa solo le righe nell'intervallo e reindirizzale al file di output

sed -n '10,15p' file1.txt > file2.txt

combinazione testa/coda

Usa testa e coda per tagliare il file e ottenere solo l'intervallo di cui hai bisogno prima di reindirizzare l'output a un file

head -n 15 file1.txt | tail -n 6 > file2.txt

awk

Stampa solo le righe nell'intervallo e reindirizzale al file di output

awk 'NR>=10 && NR<=15' file1.txt > file2.txt

Apri quindi un terminale con una shell

sed -n '10,15p' file1.txt > file2.txt

Semplice e facile.

Se vuoi aggiungere alla fine invece di cancellare file2.txt , usa >> per il reindirizzamento.

sed -n '10,15p' file1.txt >> file2.txt
                          ^^

AWK è anche un potente manipolatore di testo da riga di comando:

awk 'NR>=10 && NR<=15' file1.txt > file2.txt

Linux
  1. Come scrivere un file in un altro?

  2. Come aggiungere più righe a un file?

  3. Come copiare file in Linux e Unix? 10 cp Esempi di comandi

  4. Come scoprire le terminazioni di riga in un file di testo?

  5. Come rimuovere le linee che appaiono sul file B da un altro file A?

Come dividere un file di grandi dimensioni in parti a numeri di riga dati

Come unire più righe in una in un file in Linux

Come convertire un file Windows in un file UNIX

Come copiare o clonare i permessi da un file all'altro su Linux

Come copiare un file da un'altra directory a quella corrente?

Come fare eco in un file