Käsk "sed" GNU / Linuxi tüüpi vabades operatsioonisüsteemides on see väga mitmekülgne käsk, sest see omakorda Seda peetakse tekstiredaktoriks, mis on orienteeritud tüüpiliste "interaktiivsete" asemel "voolule", kuna see aktsepteerib sisendina faili või standardsisendit, siis töötleb iga rida ja tulemus saadetakse standardväljundisse. See tähendab, SED (voo redaktor) võimaldab meil failide erinevate ridade sisu muuta käskude seeria või käsufaili põhjal.
Üldiselt kasutatakse filtrina käsku «sed», kuna see loeb teie andmesisestuse kõiki ridu ja sooritab seejärel nõutavad toimingud, mida tavaliselt loetakse, ekstraktitakse, muudetakse ja kuvatakse või salvestatakse. Kuigi selle jõud on selline, et lisaks võimaldab see meil mugaval viisil kustutada ridu, kirjeid või asendada failiridades olevad märgistringid.
Sissejuhatus käsklusesse “sed”
Ya en otras publicaciones anteriores en DesdeLinux hemos hablado y mostrados ejemplos sobre el uso de dicho comando, näiteks: Konkreetsete ridade kustutamine failist ... y Terminaliga: Regulaaravaldiste II kasutamine: asendused, nii et seekord näeme otseselt veidi arenenumaid ja sama praktilisi näiteid selle kasutamiseks.
Põhimõtteliselt on käsul «sed» järgmine süntaks:
sed comandos_sed archivo
Kus "Command_sed" vastab ühele või mitmele spetsifikatsioonile selle kohta, mida teha loetud ridadega "arhiiv".
Ulatuslikum kasutamine jätab meile järgmise süntaksi:
sed [-ns] '[direccion] instruccion argumentos'
Kui:
Praktilised näited
Lisage teele failid / kaustad
Kasulik käsurida, mida saab kasutada määratud X-tee sisu loetlemiseks ja seejärel otsitud üksuse tuvastamiseks / loendamiseks / filtreerimiseks ja järgneva toimingu märkimiseks.
ls -l | awk '{ print $NF }' | sed 1d
Näide:
See teine käsku "sed" kasutav variant on väga kasulik:
find /opt/MilagrOS/file-apps/fondos_pantalla/ -type f | sed 's/^\.\///g' | xargs -n 1 basename
Looge arvude jada
Kuvage ekraanil või salvestage faili arvuline järjestus (või mõni muu sisend), mis on loodud, kuid horisontaalsel (lineaarsel) ja mitte vertikaalsel viisil, mida saab hiljem teiste protsesside jaoks lugeda.
seq 100|tr '\n' ' '|sed 's, $,\n,g'
Sama näite saab teha, ühendades käsu «janu " koos "Printf" nagu allpool näidatud:
printf '%s ' {1..100}|sed 's/ $/\n/'
Kustuta välistustega failid
Failisüsteemi teekonna sirvimine failide mustrite otsimiseks välistamiseks ja seejärel ülejäänud sisu kustutamine. Väga kasulik täpseks ja hoolikaks puhastamiseks.
find /opt/MilagrOS/file-apps/fondos_pantalla/ -type f | sed -e '/.*\.txt$/d' -e '/.*\.exe$/d' | xargs rm
Looge virtuaalne MAC-aadress
See samm võib olla kasulik arvuti turvalisuse või kaitse ülesannete täitmiseks ohtlike saitide sirvimisel või häkkimistoimingute tegemisel.
MAC=`(date; cat /proc/interrupts) | md5sum | sed -r 's/^(.{10}).*$/\1/; s/([0-9a-f]{2})/\1:/g; s/:$//;'` ; echo $MAC
Sama efekti saab saavutada, kasutades käsku "sed" koos teiste käskudega, nagu allpool näidatud:
openssl rand -hex 6 | sed 's/\(..\)/\1:/g; s/.$//'
od -An -N10 -x /dev/random | md5sum | sed -r 's/^(.{10}).*$/\1/; s/([0-9a-f]{2})/\1:/g; s/:$//;'
od /dev/urandom -w6 -tx1 -An|sed -e 's/ //' -e 's/ /:/g'|head -n 1
Näide:
Ajutiselt muutke terminali käsku
See võib aidata meil ajutiselt sisestada parameetrisse parameetreid, mis võivad meile spetsiaalse tegevuse ajal kasulikud olla. Selles näites muudame ainult viiba kuvamise viisi.
export PS1="C:\$( pwd | sed 's:/:\\\\\\:g' )\\> "
Halda käsu "ps" väljundit
Väga praktiline käsukorraldus, mis võimaldab käsu «ps» väljundi, st terminaliprotsesside haldurist saadud vormindamist.
sudo ps -e -o pcpu,cpu,nice,state,cputime,args --sort pcpu | sed "/^ 0.0 /d"
Näide:
Seda saab rakendada protsesside jaoks vastavalt tarbitud mälu protsendile:
sudo ps -e -o pmem,nice,state,cputime,args --sort pmem | sed "/^ 0.0 /d"
Loodan, et need käsurea näited käsuga "sed", on väga kasulikud. Ja neid kasutatakse kasutamiseks otse konsoolist või kaudselt, sisestades need skripti (automatiseeritud ülesanne).
Järgmises Shelli skriptimise postituses uurime teisi käske.
Kui soovite käsu "sed" kohta veidi rohkem teada saada, külastage seda linki "Juhend ja lühike juhend Unixi ja Linuxi jaoks"Või"Põhikasutus»Ja kui soovite Shelli skriptimise kohta lisateavet meie enda ajaveebist, saate vaadata meie teisi selleteemalisi väljaandeid, klõpsates siin: Skriptimine DesdeLinux.