
paste
je příkaz, který umožňuje horizontálně sloučit řádky souborů. Vypisuje řádky sestávající z postupně odpovídajících řádků každého souboru zadaného jako argument, oddělených tabulátory.
V tomto tutoriálu vysvětlíme, jak používat paste
příkaz.
Jak používat paste
Příkaz #
paste
je jedním z méně známých a používaných nástrojů příkazového řádku pro Linux a Unix.
Obecná syntaxe pro paste
příkaz je následující:
paste [OPTION].. [FILE]...
Pokud nejsou poskytnuty žádné vstupní soubory nebo když -
je zadáno jako argument, paste
používá standardní vstup.
Předpokládejme, že máme následující soubory:
soubor1Iron Man
Thor
Captain America
Hulk
Spider Man
soubor2Black Widow
Captain Marvel
Dark Phoenix
Nebula
Při vyvolání bez možnosti paste
přečte všechny soubory zadané jako argumenty a vodorovně sloučí odpovídající řádky souborů oddělené mezerou:
paste file1 file2
Iron Man Black Widow
Thor Captain Marvel
Captain America Dark Phoenix
Hulk Nebula
Spider Man
Místo zobrazení výstupu na obrazovce jej můžete přesměrovat do souboru pomocí >
, >>
operátoři:
paste file1 file2 > file3
Pokud soubor neexistuje, bude vytvořen. >
operátor přepíše existující soubor, zatímco >>
operátor připojí výstup k souboru.
-d
, -delimiters
možnost umožňuje zadat seznam znaků, které se mají použít jako oddělovače namísto výchozího TAB
oddělovač.
Každý oddělovač se používá postupně. Když je seznam vyčerpán, paste
začíná znovu od prvního oddělovacího znaku.
Chcete-li použít _
(podtržítko) jako oddělovač namísto TAB
, napsali byste:
paste -d '_' file1 file2
Iron Man_Black Widow
Thor_Captain Marvel
Captain America_Dark Phoenix
Hulk_Nebula
Spider Man_
Zde je příklad použití dvou oddělovačů:
paste -d '%|' file1 file2 file1
Řádky z prvního a druhého souboru jsou odděleny prvním znakem ze seznamu oddělovačů. Druhý a třetí řádek souboru jsou odděleny druhým oddělovačem.
Pokud bylo zadáno více souborů, paste
začne znovu od začátku seznamu.
Iron Man%Black Widow|Iron Man
Thor%Captain Marvel|Thor
Captain America%Dark Phoenix|Captain America
Hulk%Nebula|Hulk
Spider Man%|Spider Man
-s
, --serial
volba říká paste
pro zobrazení řádků jednoho souboru najednou namísto jednoho řádku z každého souboru.
paste -s file1 file2
Příkaz sloučí všechny řádky z daného souboru do samostatných řádků:
Iron Man Thor Captain America Hulk Spider Man
Black Widow Captain Marvel Dark Phoenix Nebula
Při použití s -z
, --zero-terminated
možnost paste
používá k oddělení položek místo výchozího znaku nového řádku znak null. Toto chování je užitečné při paste
se používá v kombinaci s find -print0
a xargs -0
příkazy pro zpracování názvů souborů obsahujících speciální znaky.
Závěr č.
paste
příkaz se používá ke sloučení odpovídajících řádků daných souborů.
Pokud máte nějaké dotazy nebo zpětnou vazbu, neváhejte zanechat komentář.