principala diferență între sed și awk este asta sed este un utilitar de comandă care funcționează cu fluxuri de caractere pentru căutarea, filtrarea și procesarea textului în timp ce awk mai puternic și mai robust decât sed cu constructori sofisticați de programare, cum ar fi dacă / altceva, în timp ce face / în timp etc..
Un sistem de operare funcționează ca interfață între utilizator și dispozitivele hardware. Computerul nu poate efectua nici o sarcină fără un sistem de operare. Există multe sisteme de operare, iar UNIX este una dintre ele. Este un sistem de operare stabil care suportă mediul multi-utilizator. Linux este un alt sistem de operare popular bazat pe UNIX. Atât UNIX, cât și Linux oferă o interfață de linie de comandă puternică (CLI). Utilizatorii pot introduce comenzile în CLI pentru a efectua diverse sarcini. Există un număr mare de comenzi, iar sed și awk sunt două dintre ele. Aceste comenzi ajută la filtrarea și transformarea textului.
1. Ce este sed
- Definiție, Exemple
2. Ce este awk
- Definiție, Exemple
3. Care este diferența dintre sed și awk
- Compararea diferențelor cheie
sed, awk, Sistem de operare
Comanda sed permite modificarea și filtrarea fișierelor text.
Figura 1: CLI pentru a furniza comenzi în Linux și UNIX
sed '1,3 d' test1.txt
Comanda de mai sus va afișa liniile după linia 3. Nu va afișa 1, 2, 3 linii ale test1.txt.
sed 's / abc / cab /' test1.txt
Comanda de mai sus va înlocui cabina în loc de abc în fișierul test1.txt.
sed 's / one / 1 /' test1.txt
Comanda de mai sus va înlocui 1 în loc de una în fișierul test1.txt.
sed '1,2! d 'test1.txt
Aceasta va afișa numai linia 1 și linia 2.
Acestea sunt câteva exemple pentru sed. În general, sed permite utilizatorilor să efectueze filtrarea și căutarea.
Comanda awk permite căutarea datelor într-un fișier și tipărirea datelor pe consola. Dacă un fișier conține mai multe coloane, este, de asemenea, posibil să găsiți date în coloane specifice. În plus, ajută la activități precum căutarea, execuția condiționată, actualizarea și filtrarea.
awk 'print' file1.txt
Comanda de mai sus va afișa întregul conținut din fișierul1.txt.
Să presupunem că fișierul file1.txt conține mai multe coloane.
awk 'print $ 1' fișier1.txt
Această comandă imprimă prima coloană a fișierului1.txt. Implicit, comanda awk consideră un spațiu alb ca separator.
awk 'print $ 1 "" $ 3 "fișier1.txt
Comanda de mai sus imprimă prima și a treia coloană a fișierului1.txt cu un spațiu între ele.
awk 'print $ 1. $ 3 'file1.txt
Comanda de mai sus va imprima concatenarea primei și a celei de-a treia coloane.
awk '/ example / print' file1.txt
Comanda de mai sus imprimă toate liniile din fișierul file1.txt care conține exemplul cuvântului.
awk '/ [0-9] / print' fișier1.txt
Comanda de mai sus imprimă toate liniile din fișierul file1.txt care conține numere de la 0 la 9.
awk '/ ^ [0-9] / print' fișier1.txt
Aceasta va imprima liniile din fișierul1.txt care încep cu un număr.
awk '/ [0-9] $ / print' fișier1.txt
Aceasta va imprima liniile din fișierul1.txt care se termină cu un număr.
De asemenea, este posibil să verificați condiționările după cum urmează.
awk 'if ($ 1 ~ / 123 /) print' fișier1.txt
Aceasta va imprima linia în cazul în care conținutul începe cu 123.
awk 'if ($ 2 ~ / [0-9] /) imprima' file1.txt
Aceasta va imprima liniile din coloana a doua care încep cu un număr.
Acestea sunt câteva exemple de awk.
În general, awk este o comandă puternică pentru procesarea și analizarea fișierelor text.
Sed este un utilitar pentru linia de comandă care analizează și transformă textul folosind un limbaj de programare simplu și compact. Awk este un utilitar de linie de comandă destinat procesării textului, care permite scrierea unor programe eficiente sub formă de declarații.
Atât sed și awk permit procesarea fluxurilor de caractere pentru sarcini precum transformarea textului. The awk este mai puternic și mai robust decât sed. Este similar cu un limbaj de programare.
Sed este simplu și limitat în timp ce awk este mai complex și mai versatil.
Diferența dintre sed și awk este că sed este un utilitar de comandă care lucrează cu fluxuri de caractere pentru căutarea, filtrarea și procesarea textului, în timp ce awk este mai puternic și robust decât sed cu constructori de programare sofisticat, cum ar fi dacă / altceva, în timp ce /.
1. Comandamentul AWK: Sesiunea 1: Selectați datele coloanei, Testarea lumii, 8 februarie 2017, Disponibil aici.
2. Utilizarea utilitarului Linux AWK, Frank Programmer, 25 iunie 2011, Disponibil aici.
3. Tutorial Linux / Unix || Comenzile SED în Linux de Shiva, Durga Software Solutions, 30 octombrie 2016, disponibil aici.
1. "În primul rând pe Xubuntu 11.04" de Kris Kendall, Jesse Kornblum și Nick Mikus - Captură de ecran a ieșirii -h a primului domeniu (Public Domain) prin Wikimedia Commons