Hur skickar jag filnamn till skript?
Ett skript som bearbetar specifika filer är praktiskt som dokumentation av vad du gjort, men ett skript som kan bearbeta vilka filer som helst är ännu mer användbart.
För att stödja detta
kan du använda det speciella uttrycket $@ (dollartecken direkt följt av ett snabel-a)
som betyder "alla kommandoradsparametrar som skickats till skriptet".
Om till exempel unique-lines.sh innehåller sort $@ | uniq, och du kör:
bash unique-lines.sh seasonal/summer.csv
ersätter skalet $@ med seasonal/summer.csv och bearbetar en fil. Om du kör detta:
bash unique-lines.sh seasonal/summer.csv seasonal/autumn.csv
bearbetas två datafiler, och så vidare.
Som en påminnelse: för att spara det du skrivit i Nano, tryck Ctrl + O för att skriva filen, sedan Enter för att bekräfta filnamnet och sedan Ctrl + X för att avsluta redigeraren.
Den här övningen är en del av kursen
Introduktion till Shell
Interaktiv övning med praktiskt arbete
Gör teori till handling med en av våra interaktiva övningar
Starta övningen