Bežne používaný cheat list „sed“:
Najbežnejšie používané znaky používané v príkaze `sed 'sú vysvetlené v nasledujúcej tabuľke.
Charakter | Účel |
do | Slúži na pridávanie obsahu. |
b | Používa sa na vetvenie obsahu. |
c | Slúži na zmenu obsahu. |
d | Slúži na vymazanie riadka súboru. |
D | Slúži na vymazanie prvého riadka súboru. |
g | Kedysi sa kopírovalo z pozdržaného textu. |
G | Používa sa na pripojenie z podržaného textu. |
h | Slúži na kopírovanie v pozdržanom texte. |
H | Používa sa na pripojenie k podržanému textu. |
i | Slúži na vloženie. |
Ja | Slúži na vytlačenie náhradného riadku. |
n | Slúži na prechod na nasledujúci riadok. |
N. | Slúži na pripojenie ďalšieho vstupného riadka. |
p | Slúži na tlač. |
P | Slúži na vytlačenie prvého riadku. |
čo | Používa sa na ukončenie. |
Q | Používa sa na okamžité ukončenie. |
r | Slúži na čítanie súboru. |
R. | Slúži na čítanie riadka zo súboru. |
s | Používa sa ako náhrada. |
t | Používa sa na testovanie substitúcie. |
T | Používa sa na testovanie bez substitúcie. |
v | Slúži na zápis do súboru. |
IN | Slúži na zapísanie riadka do súboru. |
X | Slúži na výmenu vzorov a držanie. |
a | Slúži na preklad. |
S | Slúži na vyčistenie linky. |
'=' | Slúži na vytlačenie čísla riadku. |
Nahraďte viac riadkov pomocou príkazu `sed` z terminálu:
V tejto časti tohto tutoriálu je ukázané, ako je možné príkaz „sed“ použiť na nahradenie viacerých riadkov zo súboru z terminálu. Vytvorte súbor s názvom sed.txt pomocou nasledujúceho obsahu otestujte príkazy tejto časti.
sed.txt
Úplná forma sed je editor streamov.
Je to unixový nástroj, ktorý sa používa na čítanie a prevádzanie textu v inom formáte.
Bol vyvinutý spoločnosťou Lee E. McMahon.
Slúži na spracovanie textu.
Podporuje regulárne výrazy.
Príklad 1: Vymeňte dve po sebe idúce čiary
Nasledujúci príkaz „sed“ nahradí dva po sebe nasledujúce riadky iným riadkom. Tu sa voľba -z používa na nahradenie po sebe nasledujúcich riadkov nulovými údajmi pred pridaním náhradného textu. Podľa príkazu 3rda 4thriadky súboru budú nahradené textom, „Je to veľmi užitočný nástroj“ .
$katsed.txt$sed -S 's/Vyvinul ho Lee E. McMahon. nPoužíva sa na text
spracovanie./Je to veľmi užitočný nástroj./'sed.txt
Po spustení príkazov sa zobrazí nasledujúci výstup.
Príklad 2: Nahradenie viacerých riadkov na základe zhody a globálneho príznaku
Nasledujúci príkaz „sed“ nahradí všetky riadky, ktoré začínajú slovom, 'To' slovom „ Tento riadok je nahradený '.
$katsed.txt$sed 's/^It.*/Tento riadok je nahradený/g'sed.txt
Po spustení príkazov sa zobrazí nasledujúci výstup. Tri riadky obsahujú slovo „ To „V súbore. Tieto riadky boli teda nahradené náhradným textom.
Príklad 3: Nahradenie viacerých riadkov na základe príkazu zhody a nasledujúceho riadku
Nasledujúci príkaz „sed“ nahradí slovo „ je „Slovom“ bol ‘Príkazom v nasledujúcom riadku‘ n ’.
$katsed.txt$sed '{n;/is/{s/is/was/}}'sed.txt
Po spustení príkazov sa zobrazí nasledujúci výstup. Tu, 'je' existuje v 2nda 4thriadky súboru a tieto riadky sú upravené slovom „Bol“ .
Nahraďte viac riadkov vytvorením súboru skriptu `sed ':
V predchádzajúcich príkladoch boli príkazy `sed` vykonané z terminálu. Je to však skriptovací jazyk a ak skript obsahuje viac príkazov, je lepšie vytvoriť pomocou skriptu súbor sed. Vytvorte textový súbor s názvom students.txt s nasledujúcim obsahom, v ktorom bude použitý skript `sed '.
students.txt
ID: 111045Meno: Robert
Oddelenie: CSE
Dávka: 35
ID: 111876
Meno: Jozef
Pracovisko: BBA
Dávka: 27
ID: 111346
Meno: William
Oddelenie: CSE
Dávka: 45
ID: 111654
Meno: Charles
Oddelenie: EEE
Dávka: 41
ID: 111346
Meno: John
Oddelenie: CSE
Dávka: 25
ID: 111746
Meno: Thomas
Oddelenie: CSE
Dávka: 15
Príklad 4: Nahradenie viacerých riadkov súboru pomocou súboru skriptu „sed“
Vytvorte súbor sed s názvom nahradiť.sed s nasledujúcim obsahom, ktorý nahradí viac riadkov na základe vzoru vyhľadávania. Tu slovo „ CSE „Sa vyhľadá v textovom súbore a ak zhoda existuje, potom znova vyhľadá čísla 35 a 15. Ak v súbore existuje druhá zhoda, bude nahradená číslom 45.
nahradiť.sed
/CSE/ {p; n;
/35/ {
s/35/Štyri, päť/;
p; d;
}
/pätnásť/ {
s/pätnásť/55/;
p; d;
}
}
p;
Spustením nasledujúceho príkazu skontrolujete existujúci obsah súboru. „CSE“ sa v textovom súbore objavil štyrikrát. 35 a 15 existujú na dvoch miestach.
$katstudents.txt
Nasledujúci príkaz nahradí obsah viacerých riadkov na základe skriptu sed.
$sed -n -fnahradiť.sed študenti.txtPo spustení príkazu sa zobrazí nasledujúci výstup.
Záver
V tomto návode boli ukázané rôzne spôsoby nahradenia viacerých riadkov alebo obsahu viacerých riadkov pomocou príkazu `sed '. V tomto návode je tiež ukázané, ako je možné skript `sed 'spustiť zo súboru sed. Dúfam, že tento návod pomôže čitateľovi nahradiť viac riadkov ľubovoľného súboru pomocou príkazu `sed`.