Paste (Unix)paste è un comando dei sistemi operativi Unix e Unix-like, e più in generale dei sistemi POSIX[1] e GNU[2], che legge uno o più file di testo (o lo standard input) e ne unisce le linee corrispondenti, oppure unisce tutte le linee di ciascun file in un'unica linea, mostrando in entrambi i casi il risultato sullo standard output. È un tipo di filtro. SintassiLa sintassi generale di paste è la seguente: paste [-d separatori] [-s] [--] [file1 [file2 …] ] I parametri falcoltativi file specificano i nomi dei file di testo di cui unire le linee. Se non specificati, i dati sono letti dallo standard input. Uno o più parametri possono essere dei trattini ("-") per indicare di leggere in quel punto una linea dallo standard input. Il doppio trattino -- (facoltativo) indica che i parametri successivi non sono da considerarsi opzioni. Il comportamento predefinito prevede di unire le linee usando il carattere di controllo tab come separatore; in caso di file che contengono un numero diverso tra loro di linee, paste si comporta come se leggesse linee vuote dai file più corti (tranne quando è in uso l'opzione -s). Tra le opzioni principali vi sono:
EsempiDati tre file contenenti le linee che seguono file1.txt: uno due tre quattro cinque file2.txt: primo secondo terzo file3.txt: Alice Bruno Carlo Daniela Unisce le linee corrispondenti di ciascun file, usando il carattere tab come separatore: $ paste file1.txt file2.txt file3.txt uno primo Alice due secondo Bruno tre terzo Carlo quattro Daniela cinque Unisce le linee corrispondenti di ciascun file, usando una barra verticale ("|") per separare le linee del primo e del secondo file, ed il carattere punto e virgola (";") per separare le linee del secondo e del terzo file: $ paste -d "|;" file1.txt file2.txt file3.txt uno|primo;Alice due|secondo;Bruno tre|terzo;Carlo quattro|;Daniela cinque|; Unisce le linee di ciascun file in un'unica linea, usando il carattere tab come separatore: $ paste -s file1.txt file2.txt file3.txt uno due tre quattro cinque primo secondo terzo Alice Bruno Carlo Daniela Unisce le linee di ciascun file in un'unica linea, usando a rotazione una barra verticale ("|") ed il carattere punto e virgola (";") per separare gli elementi: $ paste -d "|;" -s file1.txt file2.txt file3.txt uno|due;tre|quattro;cinque primo|secondo;terzo Alice|Bruno;Carlo|Daniela Note
Voci correlate |