De huvudskillnad mellan sed och awk är det sed är ett kommandovärde som fungerar med strömmar av tecken för sökning, filtrering och textbehandling under awk mer kraftfull och robust än sed med sofistikerade programmeringskonstruktioner som om / annars, medan, gör / stund etc.
Ett operativsystem fungerar som gränssnitt mellan användar- och hårdvaruenheter. Datorn kan inte utföra någon uppgift utan ett operativsystem. Det finns många operativsystem och UNIX är en av dem. Det är ett stabilt operativsystem som stöder flerbrukarmiljöer. Linux är ett annat populärt operativsystem baserat på UNIX. Både UNIX och Linux erbjuder kraftfulla kommandoradsgränssnitt (CLI). Användarna kan ange kommandona till CLI för att utföra olika uppgifter. Det finns ett stort antal kommandon, och sed och awk är två av dem. Dessa kommandon hjälper till att filtrera och ändra text.
1. Vad är sed
- Definition, exempel
2. Vad är awk
- Definition, exempel
3. Vad är skillnaden mellan sed och awk
- Jämförelse av viktiga skillnader
sed, awk, operativsystem
Kommandot sed tillåter modifiering och filtrering av textfiler.
Figur 1: CLI för att ge kommandon i Linux och UNIX
sed '1,3 d' test1.txt
Ovanstående kommando kommer att visa raderna efter rad 3. Den kommer inte att visa 1, 2, 3 rader i test1.txt.
sed 's / abc / cab /' test1.txt
Kommandot ovan kommer att ersätta hytt istället för abc i test1.txt-filen.
sed 's / one / 1 /' test1.txt
Kommandot ovan kommer att ersätta 1 istället för en i filen test1.txt.
sed '1,2! d 'test1.txt
Detta visar bara linje 1 och linje 2.
Det är få exempel på sed. Sammantaget tillåter sed att användarna kan filtrera och söka.
Kommandot awk tillåter att söka data i en fil och skriva ut data på konsolen. Om en fil innehåller flera kolumner, är det också möjligt att hitta data i specifika kolumner. Dessutom hjälper det till uppgifter som sökning, villkorligt utförande, uppdatering och filtrering.
awk 'print' file1.txt
Ovanstående kommando kommer att visa allt innehåll i filen1.txt.
Antag att filen file1.txt innehåller flera kolumner.
awk 'skriv ut $ 1' file1.txt
Detta kommando skriver ut den första kolumnen i filen1.txt. Som standard betraktar awk-kommandot ett vitt utrymme som separator.
awk 'print $ 1 "" $ 3' file1.txt
Ovanstående kommando skriver ut den första och tredje kolumnen i filen1.txt med ett mellanslag mellan.
awk 'skriv ut $ 1. $ 3 'file1.txt
Ovanstående kommando kommer att skriva sammanhopningen av första och tredje kolumnen.
awk '/ example / print' file1.txt
Ovanstående kommando skriver ut alla rader i filen file1.txt som innehåller ordet exemplet.
awk '/ [0-9] / print' file1.txt
Ovanstående kommando skriver ut alla rader i filen file1.txt som innehåller siffror från 0 till 9.
awk '/ ^ [0-9] / print' file1.txt
Detta kommer att skriva ut linjerna i file1.txt som börjar med ett nummer.
awk '/ [0-9] $ / print' file1.txt
Detta kommer att skriva ut linjerna i file1.txt som slutar med ett nummer.
Det är också möjligt att kontrollera tillståndsbetingelser enligt följande.
awk 'if ($ 1 ~ / 123 /) print' file1.txt
Detta kommer att skriva ut linjen om innehållet börjar med 123.
awk 'if ($ 2 ~ / [0-9] /) print' file1.txt
Detta kommer att skriva ut linjerna i kolumn två som börjar med ett nummer.
Det är några exempel på awk.
Totalt sett är awk ett kraftfullt kommando för att bearbeta och analysera textfiler.
Sed är ett kommandoradsverktyg som tolkar och förvandlar text, med ett enkelt, kompakt programmeringsspråk. Den awk är ett kommandoradsverktyg som är utformat för textbehandling som gör det möjligt att skriva effektiva program i form av uttalanden.
Både sed och awk tillåter bearbetningsströmmar av tecken för uppgifter som textomvandling. Vakan är kraftfullare och starkare än sed. Det liknar ett programmeringsspråk.
Sed är enkel och begränsad medan awk är mer komplex och mångsidig.
Skillnaden mellan sed och awk är att sed är ett kommandofunktion som fungerar med teckenflöden för sökning, filtrering och textbehandling medan awk är kraftfullare och robustare än sed med sofistikerade programmeringskonstruktioner som om / annars, medan, gör / medan etc.
1. AWK-kommando: Session 1: Välj kolumndata, testvärld, 8 februari 2017, tillgänglig här.
2. Använda Linux AWK Utility, Frank Programmerare, 25 juni 2011, Tillgänglig här.
3. Linux / Unix-handledning || SED-kommandon i Linux av Shiva, Durga Software Solutions, 30 oktober 2016, Tillgänglig här.
1. "Först på Xubuntu 11.04" Av Kris Kendall, Jesse Kornblum och Nick Mikus - Skärmdump av -h-utgången av främsta (Public Domain) via Commons Wikimedia