Gyakran használt 'sed' csalólap:
A `sed` parancsban használt leggyakrabban használt karaktereket az alábbi táblázat ismerteti.
karakter | Célja |
nak nek | Tartalom hozzáfűzésére szolgál. |
b | Tartalom elágazásához használják. |
c | A tartalom megváltoztatására szolgál. |
d | Egy fájl sorának törlésére szolgál. |
D | A fájl első sorának törlésére szolgál. |
g | Régebben a szövegből másolt. |
G | Hozzáfűzésre szolgál a tartó szövegből. |
h | Arra szolgál, hogy bemásolja a szövegbe. |
H | A szöveghez való hozzáfűzésre szolgál. |
én | Behelyezésre használják. |
én | A helyettesítő sor nyomtatására szolgál. |
n | A következő sorra lépéshez használják. |
N | A következő beviteli sor hozzáfűzésére szolgál. |
o | Nyomtatásra használják. |
P | Az első sor nyomtatására szolgál. |
mit | Leszokásra használják. |
Q | Azonnal abbahagyják. |
r | A fájl olvasására szolgál. |
R | A fájl sorának kiolvasására szolgál. |
s | Helyettesítésére használják. |
t | A helyettesítés tesztelésére használják. |
T | Arra használják, hogy teszteljék a helyettesítést. |
ban ben | A fájlba írásra szolgál. |
BAN BEN | Egy sor írására szolgál a fájlba. |
x | A minták felcserélésére és tartására szolgál. |
és | Fordításra használják. |
Val vel | A vonal törlésére szolgál. |
'=' | A sorszám nyomtatására szolgál. |
Cseréljen ki több sort a terminál `sed` parancsával:
Az oktatóanyag ezen része azt mutatja be, hogyan használható a `sed` parancs a sorok cseréjére egy fájlból a terminálról. Hozzon létre egy nevű fájlt sed.txt a következő tartalommal tesztelje ennek a résznek a parancsait.
sed.txt
A sed teljes formája a stream szerkesztő.
Ez egy Unix segédprogram, amely a szöveg más formátumban történő olvasására és konvertálására szolgál.
Lee E. McMahon fejlesztette ki.
Szövegfeldolgozásra használják.
Támogatja a reguláris kifejezéseket.
1. példa: Két egymást követő vonal cseréje
A következő `sed` parancs két egymást követő sort helyettesít egy másik sorral. Itt a -z opciót használjuk arra, hogy az egymást követő sorokat null adatokkal helyettesítsük, mielőtt hozzáadnánk a helyettesítő szöveget. A parancs szerint a 3rdés 4tha fájl sorait a szöveg helyettesíti, 'Ez egy nagyon hasznos eszköz' .
$macskased.txt$sed -Val vel 's/Lee E. McMahon fejlesztette ki. nSzövegekhez használják
feldolgozás./Nagyon hasznos eszköz.sed.txt
A következő kimenet jelenik meg a parancsok futtatása után.
2. példa: Több sor cseréje az egyezés és a globális zászló alapján
A következő 'sed' parancs lecseréli a szóval kezdődő összes sort, 'Azt' a szóval, ' Ezt a sort lecserélik ’.
$macskased.txt$sed 's/^It.*/Ez a sor le van cserélve/g'sed.txt
A következő kimenet jelenik meg a parancsok futtatása után. Három sor tartalmazza a „ Azt ’Az aktában. Tehát ezeket a sorokat felváltotta a helyettesítő szöveg.
3. példa: Több sor cseréje az egyezés és a következő sor parancs alapján
A következő 'sed' parancs helyettesíti a szót, van 'Szó szerint' volt 'A következő sor paranccsal,' n '.
$macskased.txt$sed '{n;/is/{s/is/volt/}}'sed.txt
A következő kimenet jelenik meg a parancsok futtatása után. Itt, 'Van' létezik a 2 -benndés 4thfájl sorait, és ezeket a sorokat a szó módosítja 'volt' .
Több sor cseréje a 'sed' parancsfájl létrehozásával:
Az előző példákban a `sed` parancsokat hajtották végre a terminálról. De ez egy szkriptnyelv, és ha a szkript több állítást tartalmaz, akkor jobb, ha létrehoz egy sed fájlt a szkripttel. Hozzon létre egy szöveges fájlt diákok.txt a következő tartalommal, amelyben a `sed` szkript lesz alkalmazva.
diákok.txt
ID: 111045Név: Robert
Department: CSE
Tétel: 35
ID: 111876
Név: József
Tanszék: BBA
Tétel: 27
ID: 111346
Név: William
Department: CSE
Tétel: 45
ID: 111654
Név: Charles
Osztály: EEE
Tétel: 41
ID: 111346
Név: János
Department: CSE
Tétel: 25
ID: 111746
Név: Tamás
Department: CSE
Tétel: 15
4. példa: Cserélje ki a fájl több sorát a `sed 'parancsfájl használatával
Hozzon létre egy sed nevű fájlt cserélje ki a következő tartalommal a több sor helyett a keresési minta alapján. Itt a szó ' CSE 'A szövegfájlban lesz keresve, és ha az egyezés létezik, akkor újra megkeresi a 35 -ös és a 15 -ös számot.
cserélje ki
/CSE/ {p; n;
/35/ {
s/35/Négy öt/;
p; d;
}
/tizenöt/ {
s/tizenöt/55/;
p; d;
}
}
p;
Futtassa a következő parancsot a fájl meglévő tartalmának ellenőrzéséhez. A „CSE” négyszer jelent meg a szövegfájlban. A 35 és a 15 két helyen létezik.
$macskadiákok.txt
A következő parancs helyettesíti a több sor tartalmát a sed parancsfájl alapján.
$sed -n -fcsere.használt diákok.txtA parancs futtatása után a következő kimenet jelenik meg.
Következtetés
Ebben az oktatóanyagban különböző módokat mutatunk be több sor vagy tartalom cseréjére a 'sed' paranccsal. Ez az oktatóanyag azt is bemutatja, hogyan lehet végrehajtani a `sed 'parancsfájlt egy sed fájlból. Remélem, hogy ez az oktatóanyag segít az olvasónak, hogy bármely sor több sorát kicserélje a `sed` paranccsal.