Vonalak törlése a Sed fájlból

Az SED Unix segédprogram hatékony és sokoldalú módot biztosít egy vagy több sor törlésére a kijelölt fájlból, hogy megfeleljen a felhasználó igényeinek.

Ezt a Unix parancsot a parancssori feldolgozáshoz használják . Ez a segédprogram arra használható, hogy törölje a kifejezéseket egy olyan fájlból, amelyet egy meghatározott határoló (pl. Vessző, lap vagy szóköz) azonosíthat, sorszámmal, vagy egy sor, kifejezés vagy egy sor címének keresésével a Sed szintaxisa .

Sed: Egy vagy több sor törlése a fájlból

Íme, hogyan távolíthat el egy vagy több sort a fájlból.

Szintaxis

 sed '[/] d'

sed '{[/] [, ] [/] d'

/.../ = határoló

n = sorszám

string = a sorban található karakterlánc

regex = a keresett mintának megfelelő rendszeres kifejezés

addr = egy sor címe (szám vagy minta)

d = törlés

Példák a Sedre

Íme néhány példa a fenti szintaxis használatára.

A harmadik sor eltávolításához használja a következő kódot:

 sed '3d' fájlnév.txt 

Távolítsa el a "awk" karakterláncot tartalmazó sort a következő használatával:

 sed '/ awk / d' fájlnév.txt 

Az utolsó sort eltávolíthatja a következővel:

 sed '$ d' fájlnév.txt 

Vagy távolítsa el az összes üres sort:

 sed '/ ^ $ / d' fájlnév.txt

sed '/./!d' fájlnév.txt

Távolítsuk el a vonal egyezését egy rendszeres kifejezéssel (a digitális karaktereket tartalmazó, legalább 1 számjegyből álló sor megszüntetésével):

 sed '/ [0-9 /] [0-9] * $ / d' fájlnév.txt 

Távolítsa el a 7. és 9. sor közötti intervallumot:

 sed '7, 9d' fájlnév.txt 

Ugyanaz a művelet, mint a fenti, de a címet paraméterekkel helyettesíti:

 sed '/ -Start /, / - Vége / d' fájlnév.txt 

A fenti példák csak a fájl megjelenítésén változnak (stdout1 = képernyő).

A régi verziók állandó módosításához (<4) ideiglenes fájlt használjon a GNU sed-re a "-i [utótag]" használatával :

 sed -i ".bak" '3d' fájlnév.txt 
Előző Cikk Következő Cikk

Top Tippek