-
Notifications
You must be signed in to change notification settings - Fork 2
Laborationer
På övning 3, borde det inte heta Paramater Substiution istället för som författaren har valt att döpa det till Dollarsign Substitution vilket inte är ett vedertaget begrepp?
Sidan 4, stycket med innehållet
Ett exempel på hur vi kan skapa ett eget ls-kommando:
$ ls -l | grep -v total | awk '{ print $8"\t ar "$5" bytes stor" }'
Raden med grep tar bort den första raden från ls-kommandots utmatning. Skicka vidare skicka vidare.. är inte rör fantastiska?
Den korrekta raden för att få önskat resultat (i varje fall på Ubuntu 13.04) är
$ ls -l | grep -v total | awk '{ print $9"\t ar "$5" bytes stor" }'
D.v.s. det 9:e fältet visar storleken, inte det 8:e som visar tiden. Detsamma gäller för alla rader med koden
$ ls -l /etc/| awk '/^.*\.conf$/ { print $8 }'
Här bör det också vara $9 istället för $8. Det gäller alltså både sidan 4 och 5 i laboration 8 där en hel del exempel använder just denna kodsnutt. OBS: Dubbelkolla gärna så det inte är en lokal avvikelse!
Sidan 5, AWK-raden
$ ls -l /etc/| awk 'BEGIN { print ”Jag hittade:\n” } /\<.*\.conf$/ { print $8 }'
fungerar inte, borde det inte vara så här istället:
$ ls -l /etc/| awk 'BEGIN { print "Jag hittade:\n" } /^.*\.conf$/ { print $9 }'
d.v.s. ett hustak (^) istället för (\<). \< betyder väl inget särskilt i regexp? Backslashet escapar ju bara < så att < faktiskt blir ett < utan speciell innebörd. Och i regexp har väl inte < någon speciell mening ändå? Eller är jag helt ute och cyklar nu? Och även då ändra $8 till $9. Förmodligen är \< bara ett typo.
Övning 5
Felaktiga inloggningsförsök i Debian/Ubuntu hamnar i filen /var/log/auth.log som default, inte i /var/log/syslog som anges i labben.