Kuidas asendada uusjoon komaga, kasutades käsku 'sed'

How Replace Newline With Comma Using Sed Command

Mis tahes märgi või stringi saab asendada käsuga 'sed'. Mõnikord peame failis uue rea märgi ( n) asendama komaga. Selles artiklis kasutame käsku 'sed', et asendada n komaga.

Kasutades 'sed', et asendada n komaga

N komaga asendamisel võib tekkida palju probleeme. Faili loomisel lõpeb vaikimisi iga rida tähega n. Käsk 'sed' saab hõlpsasti jaotada n ja asendada uue rea mis tahes tähemärgiga. N asemel võib kasutada teist eraldajat, kuid ainult siis, kui kasutatakse GNU sed. Kui faili viimasel real puudub n, saab GNU sed printimist vältida n. Lisaks lisatakse tavaliselt n igale järjestikusele väljundile 'sed'.



Looge fail

Selles artiklis näitame teile, kuidas kasutada käsku 'sed', et asendada n komaga. Selle õpetuse jätkamiseks looge tekstifail nimega Clients.txt koos järgmise tabeliteabega.



ID Nimi E -post Telefon
c01 Md. Rakib [e -post kaitstud] 01856233238
c02 Meher Afroze [e -post kaitstud] 01733536342
c03 Fakrul Ahsan [e -post kaitstud] 01934737248
c04 Helal Uddin [e -post kaitstud] 01534895898
c05 Nusrat Jahan [e -post kaitstud] 01866345254

Näide 1: asendage n komaga, kasutades -z

Valikut -z kasutatakse n teisendamiseks nullmärgiks ( 0). Faili sisu käsitletakse üherealisena, kui see ei sisalda tühikuid. Käsk 'sed' teisendab uue rea nullmärgiks ja asendab iga n komaga, kasutades esimest otsingu- ja asendusmustrit. Siin kasutatakse sõna „g” globaalseks otsinguks n. Teise otsingu- ja asendusmustriga asendatakse viimane koma n -ga.



$kassClients.txt

$sed -Koos 's/ n/,/g; s/, $/ n/'Clients.txt

Pärast käskude käivitamist luuakse järgmine väljund.

Näide 2: asendage n komaga, kasutades a, b, $! ja N

Käsuga 'sed' saab asendada n komaga, kasutades a, b, N ja $! . Siin, et kasutatakse ülesannete lisamiseks, b kasutatakse sisu hargnemiseks, N kasutatakse järgmisele reale liikumiseks ja $! kasutatakse, et vältida asendusülesande rakendamist viimasele reale. Käsk asendab igaüks n komaga, välja arvatud viimane rida.



$kassClients.txt

$sed ': a; N; $! ba; s/ n/,/g'Clients.txt

Pärast käskude käivitamist luuakse järgmine väljund.

Näide 3: asendage n komaga, kasutades H, h, d, x ja y

Kui soovite asendada n) komaga väikeses failis, siis saab kasutada järgmist käsku sed. Siin, H kasutatakse viimase rea lisamiseks hoiatustekstile, 1 h kasutatakse faili iga rea ​​kopeerimiseks esimesest reast hoideteksti, $! d kasutatakse kõigi ridade kustutamiseks, välja arvatud viimane rida, x kasutatakse hoideteksti ja mustriruumi vahetamiseks ning ja kasutatakse igaühe asendamiseks n hoiatustekstis komaga.

$kassClients.txt

$sed 'H; 1h; $! D; x; y/ n/,/'Clients.txt

Pärast käskude käivitamist luuakse järgmine väljund.

Näide 4: asendage n komaga, kasutades -n, H, h, g ja p

Asendamiseks saab kasutada käsku 'sed' n komaga koos -n suvand, mis takistab automaatset printimist. Nagu eelmises näites, H kasutatakse siin hoiatustekstile viimase rea lisamiseks, 1h kasutatakse faili iga rea ​​kopeerimiseks hoideteksti, $ viitab faili viimasele reale, g kasutatakse hoideteksti kopeerimiseks ja lk kasutatakse printimiseks.

$kassClients.txt

$sed-n'H; 1h; ${g; s / n/,/g; p} 'Clients.txt

Pärast ülaltoodud käskude käivitamist luuakse järgmine väljund.

Näide 5: asendage n komaga, kasutades H, x, p

H, x ja lk on eelmistes näidetes selgitatud. Esimene otsingu ja asendamise avaldis asendab iga n komaga ning teine ​​otsingu- ja asendusavaldus asendab koma rea ​​alguses tühikuga.

$kassClients.txt

$sed-n'H; $ {x; s/ n/,/g; s/^, //; p;}'Clients.txt

Pärast ülaltoodud käskude käivitamist luuakse järgmine väljund.

Näide 6: asendage n komaga, kasutades N ja 'cat'

Siin kasutatakse käsku 'kass' faili sisu saatmiseks käsule 'sed' ja N kasutatakse järgmisele reale liikumiseks.

$kassClients.txt

$kassClients.txt| sed 'N; s/ n/,/'

Pärast ülaltoodud käskude käivitamist luuakse järgmine väljund.

Järeldus

Andmete ülekandmiseks ühest failivormingust teise võib olla vaja asendada n komaga. Seda tüüpi asendamist saab teha ka teiste Linuxi käskude abil. Selle ülesande täitmiseks saab käsuga 'sed' kasutada paljusid käsuvõimalusi, näiteks H, N, h ja x. See õpetus hõlmab mitut võimalust käsu 'sed' kasutamiseks, et asendada n komaga.