Android

Lipiți comanda în linux (îmbinați liniile)

tr - Transform, Replace and Remove specific characters from strings | #10 Practical Bash

tr - Transform, Replace and Remove specific characters from strings | #10 Practical Bash

Cuprins:

Anonim

paste este o comandă care vă permite să îmbinați linii de fișiere pe orizontală. Eliberează linii constând din liniile corespunzătoare secvențial ale fiecărui fișier specificat ca argument, separate prin file.

În acest tutorial, vă vom explica cum să folosiți comanda paste .

Cum se utilizează comanda de paste

paste este una dintre utilitățile liniei de comandă Linux și Unix mai puțin cunoscute și utilizate.

Sintaxa generală a comenzii paste este următoarea:

paste…..

Dacă nu sunt furnizate fișiere de intrare sau când - este dat ca argument, paste folosește intrarea standard.

Să presupunem că avem următoarele fișiere:

fișier1

Iron Man Thor Captain America Hulk Spider Man fișier2

Black Widow Captain Marvel Dark Phoenix Nebula

Când este invocat fără o opțiune paste va citi toate fișierele date sub formă de argumente și va îmbina orizontal liniile corespunzătoare ale fișierelor, separate prin spațiu:

paste file1 file2

Iron Man Black Widow Thor Captain Marvel Captain America Dark Phoenix Hulk Nebula Spider Man

În loc să afișați ieșirea pe ecran, puteți să o redirecționați către un fișier utilizând operatorii > , >> :

paste file1 file2 > file3

Dacă fișierul nu există, acesta va fi creat. > Operatorul va suprascrie un fișier existent, în timp ce >> operatorul va adăuga ieșirea la fișier.

Opțiunea -d , -delimiters vă permite să specificați o listă de caractere care să fie utilizate ca delimitatori în loc de separatorul TAB implicit.

Fiecare delimitator este utilizat consecutiv. Când lista este epuizată, paste începe din nou de la primul caracter delimitator.

Pentru a utiliza caracterul _ (subliniere) ca delimitator în loc de TAB , introduceți:

paste -d '_' file1 file2

Iron Man_Black Widow Thor_Captain Marvel Captain America_Dark Phoenix Hulk_Nebula Spider Man_

Iată un exemplu de utilizare a două delimitare:

paste -d '%|' file1 file2 file1

Liniile din primul și cel de-al doilea fișier sunt separate cu primul caracter din lista delimitatorilor. A doua și a treia linie de fișier sunt separate cu al doilea delimitator.

Dacă au fost date mai multe fișiere, paste începe din nou de la începutul listei.

Iron Man%Black Widow|Iron Man Thor%Captain Marvel|Thor Captain America%Dark Phoenix|Captain America Hulk%Nebula|Hulk Spider Man%|Spider Man

Opțiunea -s , --serial indică paste să afișeze liniile unui fișier simultan, în loc de o linie din fiecare fișier.

paste -s file1 file2

Comanda va îmbina toate liniile din fișierul dat în linii separate:

Iron Man Thor Captain America Hulk Spider Man Black Widow Captain Marvel Dark Phoenix Nebula

Când este utilizată cu opțiunea -z , --zero-terminated , paste folosește un caracter nul pentru a delimita elementele în loc de caracterul implicit de linie nouă. Acest comportament este util atunci când este folosită paste în combinație cu find -print0 și xargs -0 pentru a gestiona numele fișierelor care conțin caractere speciale.

Concluzie

Comanda paste este utilizată pentru a îmbina liniile corespunzătoare de fișiere date.

pasta terminala