sed

Kako zamenjati novo vrstico z vejico z uporabo ukaza 'sed'

Kako zamenjati novo vrstico z vejico z uporabo ukaza 'sed'

Vsak znak ali niz lahko nadomestimo z ukazom 'sed'. Včasih moramo znak nove vrstice (\ n) v datoteki zamenjati z vejico. V tem članku z ukazom 'sed' zamenjamo \ n z vejico.

Uporaba 'sed' za zamenjavo \ n z vejico

Pri zamenjavi \ n z vejico lahko pride do številnih težav. Privzeto se pri ustvarjanju datoteke vsaka vrstica konča z \ n. Ukaz 'sed' se lahko enostavno razdeli na \ n in zamenja novo vrstico s katerim koli znakom. Namesto znaka \ n lahko uporabite drugo ločilo, vendar le, če se uporablja GNU sed. Ko v zadnji vrstici datoteke manjka \ n, se GNU sed lahko izogne ​​tiskanju \ n. Poleg tega se \ n običajno doda vsakemu zaporednemu izhodu 'sed'.

Ustvari datoteko

V tem članku vam bomo pokazali, kako z ukazom 'sed' \ \ zamenjate z vejico. Če želite nadaljevati s to vadnico, ustvarite besedilno datoteko z imenom Stranke.txt z naslednjimi tabelarnimi informacijami o odjemalcu.

ID Ime E-naslov Telefon
c01 Md. Rakib [e-pošta zaščitena] 01856233238
c02 Meher Afroze [e-pošta zaščitena] 01733536342
c03 Fakrul Ahsan [e-pošta zaščitena] 01934737248
c04 Helal Uddin [e-pošta zaščitena] 01534895898
c05 Nusrat Jahan [e-pošta zaščitena] 01866345254

Primer 1: \ n zamenjajte z vejico z uporabo -z

Možnost -z se uporablja za pretvorbo \ n v ničelni znak (\ 0). Vsebina datoteke se obravnava kot ena vrstica, če ne vsebuje nobenih znakov. Ukaz 'sed' bo novo vrstico pretvoril v ničelni znak in zamenjal \ n z vejico s pomočjo prvega vzorca iskanja in zamenjave. Tu se 'g' uporablja za globalno iskanje \ n. Z drugim vzorcem iskanja in zamenjave se zadnja vejica nadomesti z \ n.

$ cat Stranke.txt
$ sed -z 's / \ n /, / g; s /, $ / \ n /' Stranke.txt

Naslednji izhod bo prikazan po zagonu ukazov.

Primer 2: \ n zamenjajte z vejico z uporabo a, b, $! in N

Z ukazom 'sed' lahko \ n nadomestite \ n z vejico a, b, N in $!. Tukaj, a se uporablja za dodajanje nalog, b se uporablja za razvejanje vsebine, N se uporablja za prehod na naslednjo vrstico in $! se uporablja za preprečitev uporabe nadomestne naloge v zadnji vrstici. Ukaz bo zamenjal vsakega \ n z vejico, razen zadnje vrstice.

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

Naslednji izhod bo prikazan po zagonu ukazov.

Primer 3: \ n zamenjajte z vejico s tipkama H, h, d, x in y

Če želite zamenjati \ n) z vejico v majhni datoteki, potem lahko uporabimo naslednji ukaz 'sed'. Tukaj, H se uporablja za dodajanje zadnje vrstice besedilu zadrževanja, 1h se uporablja za kopiranje vseh vrstic datoteke v besedilo zadrževanja iz prve vrstice, $!d se uporablja za brisanje vseh vrstic, razen zadnje vrstice, x se uporablja za izmenjavo besedila in prostora vzorca, in y se uporablja za zamenjavo vsakega \ n v besedilu držanja z vejico.

$ cat Stranke.txt
$ sed 'H; 1h; $!d; x; y / \ n /, / 'Stranke.txt

Naslednji izhod bo prikazan po zagonu ukazov.

Primer 4: \ n zamenjajte z vejico z uporabo -n, H, h, g in p

Za nadomestitev lahko uporabite ukaz 'sed' \ n z vejico z -n možnost, ki preprečuje samodejno tiskanje. Kot v prejšnjem primeru, H se tukaj uporablja za dodajanje zadnje vrstice besedilu zadrževanja, 1h se uporablja za kopiranje vsake vrstice datoteke v besedilo zadrževanja, $ se nanaša na zadnjo vrstico datoteke, g se uporablja za kopiranje iz besedila imetja in str se uporablja za tiskanje.

$ cat Stranke.txt
$ sed -n "H; 1h; \ $ g; s / \ n /, / g; p" Stranke.txt

Naslednji izhod bo prikazan po zagonu zgornjih ukazov.

Primer 5: \ n zamenjajte z vejico s pomočjo H, x, str

H, x in str so bili razloženi v prejšnjih primerih. Prvi izraz za iskanje in zamenjavo bo nadomestil vsakega \ n z vejico, drugi izraz za iskanje in zamenjavo pa bo vejico na začetku vrstice zamenjal s presledkom.

$ cat Stranke.txt
$ sed -n 'H; $ x; s / \ n /, / g; s / ^, //; p;' Stranke.txt

Naslednji izhod bo prikazan po zagonu zgornjih ukazov.

Primer 6: \ n zamenjajte z vejico z uporabo N in 'cat'

Tu se uporablja ukaz 'mačka' za pošiljanje vsebine datoteke ukazu 'sed' in N se uporablja za premik v naslednjo vrstico.

$ cat Stranke.txt
$ cat Stranke.txt | sed 'N; s / \ n /, /'

Naslednji izhod bo prikazan po zagonu zgornjih ukazov.

Zaključek

Morda bo treba \ n zamenjati z vejico za prenos podatkov iz ene oblike datoteke v drugo. To vrsto zamenjave lahko izvedemo tudi z drugimi ukazi Linux. Za dokončanje te naloge lahko z ukazom 'sed' uporabite številne možnosti ukaza, na primer H, N, h in x. Ta vadnica opisuje več načinov uporabe ukaza 'sed' za zamenjavo \ n z vejico.

Kazalec skoči ali se naključno premika med tipkanjem v sistemu Windows 10
Če ugotovite, da kazalec miške med tipkanjem v prenosnem računalniku ali računalniku Windows samodejno, naključno preskakuje ali se premika sam, vam l...
Kako obrniti smer drsenja miške in sledilne ploščice v sistemu Windows 10
Miška in Sledilna ploščicaRačunalništvo ni samo enostavno, ampak bolj učinkovito in manj zamudno. Življenja brez teh naprav si ne moremo predstavljati...
Kako spremeniti miškin kazalec in velikost, barvo in shemo kazalca v sistemu Windows 10
Kazalec miške in kazalec v operacijskem sistemu Windows 10 sta zelo pomembna vidika operacijskega sistema. To lahko rečemo tudi za druge operacijske s...