pastă (informatică)
pasta este o comanda de Unix si Unix- operare sisteme și , mai general al POSIX [1] și GNU [2] sisteme , care citește unul sau mai multe fișiere text (sau standard de intrare ) și se alătură liniile corespunzătoare, sau fuzionează toate liniile fiecărui fișier într-o singură linie, în ambele cazuri afișând rezultatul la ieșirea standard . Este un tip de filtru .
Sintaxă
Sintaxa generală a pastei este următoarea:
lipiți [ separatoare -d] [-s] [-] [ fișier1 [ fișier2 ...]]
Parametrii opționali ai fișierelor specifică numele fișierelor text pentru a se uni rândurile. Dacă nu este specificat, datele sunt citite din intrarea standard . Unul sau mai mulți parametri pot fi liniuțe (" - ") pentru a indica citirea unei linii din intrarea standard în acel punct.
Linia dublă - (opțional) indică faptul că următorii parametri nu trebuie considerați opțiuni.
Comportamentul implicit este de a uni linii folosind caracterul de control tab ca separator; în cazul fișierelor care conțin un număr diferit de linii, lipirea se comportă ca și cum ar citi linii goale din fișiere mai scurte (cu excepția cazului în care este utilizată opțiunea -s ).
Printre principalele opțiuni se numără:
- -d separatoare
- Alătură liniilor folosind caracterele listate în separatoare în rotație. La începutul fiecărei linii noi de ieșire, se reia folosind primul caracter separator din listă.
- -s
- Acesta unește toate liniile primului fișier, apoi cele ale celui de-al doilea, apoi cele ale celui de-al treilea și așa mai departe, producând o singură linie pentru fiecare fișier.
Exemple
Având în vedere trei fișiere care conțin următoarele rânduri
file1.txt :
unu Două Trei patru cinci
file2.txt :
primul conform al treilea
file3.txt :
Alice Bruno Carlo Daniela
Alătură liniilor potrivite ale fiecărui fișier, folosind caracterul filă ca separator:
$ paste file1.txt file2.txt file3.txt o prima Alice două după Bruno trei al treilea Charles patru Daniela cinci
Alăturați liniile corespunzătoare fiecărui fișier, folosind o bară verticală (" | ") pentru a separa liniile primului și celui de-al doilea fișier, iar caracterul punct și virgulă (" ; ") pentru a separa liniile celui de-al doilea și al treilea fișier:
$ paste -d "|;" file1.txt file2.txt file3.txt una | prima; Alice doi | al doilea; Bruno trei | al treilea; Carlo patru |; Daniela cinci |;
Îmbină liniile fiecărui fișier într-o singură linie, folosind caracterul filă ca separator:
$ paste -s file1.txt file2.txt file3.txt unu doi trei patru cinci primul, al doilea, al treilea Alice Bruno Carlo Daniela
Îmbină liniile fiecărui fișier într-o singură linie, utilizând o bară verticală (" | ") și caracterul punct și virgulă (" ; ") în rotație pentru a separa elementele:
$ paste -d "|;" -s file1.txt file2.txt file3.txt unu | doi; trei | patru; cinci primul | al doilea; al treilea Alice | Bruno; Carlo | Daniela
Notă
- ^ (EN) paste , în The Open Group Base Specifications Issue 6 IEEE Std 1003.1, 2004 Edition. Adus la 14 iunie 2008 .
- ^ (EN) paste: Merge lines of files , în manualul GNU Coreutils. Adus la 14 iunie 2008 .