sed

Jak nahradit nový řádek čárkou pomocí příkazu 'sed'

Jak nahradit nový řádek čárkou pomocí příkazu 'sed'

Libovolný znak nebo řetězec lze nahradit pomocí příkazu 'sed'. Někdy musíme znak nového řádku (\ n) v souboru nahradit čárkou. V tomto článku používáme příkaz 'sed' k nahrazení \ n čárkou.

Použití 'sed' k nahrazení \ n čárkou

Při nahrazování \ n čárkou může dojít k mnoha problémům. Ve výchozím nastavení končí každý řádek při vytváření souboru znakem \ n. Příkaz 'sed' lze snadno rozdělit na \ n a nahradit nový řádek jakýmkoli znakem. Místo \ n lze použít jiný oddělovač, ale pouze při použití GNU sed. Pokud na posledním řádku souboru chybí \ n, může se GNU sed vyhnout tisku \ n. Dále se \ n obvykle přidává ke každému následnému výstupu 'sed'.

Vytvořte soubor

V tomto článku vám ukážeme, jak použít příkaz 'sed' k nahrazení \ n čárkou. Chcete-li pokračovat v tomto kurzu, vytvořte textový soubor s názvem Klienti.txt s následujícími tabulkovými informacemi o klientovi.

ID název E-mailem Telefon
c01 Md. Rakib [chráněno e-mailem] 01856233238
c02 Meher Afroze [chráněno e-mailem] 01733536342
c03 Fakrul Ahsan [chráněno e-mailem] 01934737248
c04 Helal Uddin [chráněno e-mailem] 01534895898
c05 Nusrat Jahan [chráněno e-mailem] 01866345254

Příklad 1: Nahraďte \ n čárkou pomocí -z

Možnost -z se používá k převodu \ n na znak null (\ 0). Obsah souboru je považován za jeden řádek, pokud neobsahuje žádné znaky null. Příkaz 'sed' převede nový řádek na znak null a nahradí každý \ n čárkou pomocí prvního vzoru hledání a nahrazení. Zde se 'g' používá ke globálnímu vyhledávání \ n. Při druhém vzoru hledání a nahrazení bude poslední čárka nahrazena \ n.

$ kočičí klienti.txt
Klienti $ sed -z 's / \ n /, / g; s /, $ / \ n /'.txt

Následující výstup bude vytvořen po spuštění příkazů.

Příklad 2: Nahraďte \ n čárkou pomocí a, b, $! a N

Příkaz 'sed' lze použít k nahrazení \ n čárkou pomocí a, b, N a $!. Tady, A slouží k připojení úkolů, b se používá k větvení obsahu, N se používá k přechodu na další řádek a $! slouží k zabránění uplatnění úlohy nahrazení na poslední řádek. Příkaz nahradí každý \ n s čárkou kromě posledního řádku.

$ kočičí klienti.txt
$ sed ': a; N; $!ba; s / \ n /, / g 'Klienti.txt

Následující výstup bude vytvořen po spuštění příkazů.

Příklad 3: Nahraďte \ n čárkou pomocí H, h, d, x a y

Pokud chcete vyměnit \ n) s čárkou v malém souboru, lze použít následující příkaz 'sed'. Tady, H slouží k připojení posledního řádku k zadržovacímu textu, 1 h se používá ke zkopírování každého řádku souboru do zadržovacího textu z prvního řádku, $!d se používá k odstranění všech řádků kromě posledního, X se používá k výměně pozdrženého textu a prostoru vzoru a y se používá k jejich nahrazení \ n v přidržovacím textu čárkou.

$ kočičí klienti.txt
$ sed 'H; 1 h; $!d; x; y / \ n /, / 'Klienti.txt

Následující výstup bude vytvořen po spuštění příkazů.

Příklad 4: Nahraďte \ n čárkou pomocí -n, H, h, ga ap

K nahrazení lze použít příkaz 'sed' \ n s čárkou s -n možnost, která zabrání automatickému tisku. Stejně jako v předchozím příkladu, H zde se používá k připojení posledního řádku k zadržovacímu textu, 1 hod se používá ke kopírování každého řádku souboru do zadržovacího textu, $ odkazuje na poslední řádek souboru, G se používá ke kopírování z pozdrženého textu a p se používá k tisku.

$ kočičí klienti.txt
$ sed -n "H; 1h; \ $ g; s / \ n /, / g; p" klienti.txt

Následující výstup bude vytvořen po spuštění výše uvedených příkazů.

Příklad 5: Nahraďte \ n čárkou pomocí H, x, p

H, x a p byly vysvětleny v předchozích příkladech. První výraz hledání a nahrazení nahradí každý \ n čárkou a druhý výraz hledání a nahrazení nahradí čárku na začátku řádku mezerou.

$ kočičí klienti.txt
$ sed -n 'H; $ x; s / \ n /, / g; s / ^, //; p;' klienti.txt

Následující výstup bude vytvořen po spuštění výše uvedených příkazů.

Příklad 6: Nahraďte \ n čárkou pomocí N a 'cat'

Příkaz „kočka“ se zde používá k odeslání obsahu souboru do příkazu „sed“ a N se používá k přechodu na další řádek.

$ kočičí klienti.txt
$ kočičí klienti.txt | sed 'N; s / \ n /, /'

Následující výstup bude vytvořen po spuštění výše uvedených příkazů.

Závěr

K přenosu dat z jednoho formátu do druhého může být nutné nahradit \ n čárkou. Tento typ náhrady lze provést také pomocí jiných příkazů systému Linux. K provedení tohoto úkolu lze pomocí příkazu 'sed' použít mnoho možností příkazů, například H, N, h a x. Tento výukový program popisuje několik způsobů, jak pomocí příkazu 'sed' nahradit \ n čárkou.

Hry Jak používat GameConqueror Cheat Engine v Linuxu
Jak používat GameConqueror Cheat Engine v Linuxu
Tento článek popisuje průvodce používáním cheatovacího modulu GameConqueror v systému Linux. Mnoho uživatelů, kteří hrají hry v systému Windows, často...
Hry Nejlepší emulátory herních konzolí pro Linux
Nejlepší emulátory herních konzolí pro Linux
Tento článek uvádí seznam populárního softwaru pro emulaci herních konzolí, který je k dispozici pro Linux. Emulace je vrstva softwarové kompatibility...
Hry Nejlepší linuxové distribuce pro hraní her v roce 2021
Nejlepší linuxové distribuce pro hraní her v roce 2021
Operační systém Linux má za sebou dlouhou cestu od svého původního, jednoduchého vzhledu založeného na serveru. Tento OS se v posledních letech nesmír...