Hallo, On Mon, 15 Apr 2002, Bernd Brodesser wrote:
* David Haller schrieb am 15.Apr.2002:
for datei in "$@" do case "$datei" in .bz2) bzcat "${datei}" >> /tmp/test.txt;; .gz) zcat "${datei}" >> /tmp/test.txt;; *) echo "Fehler: kann Datei $datei nicht ..." >&2;; esac done
Wobei die Endung ja nicht stimmen muß. Um das zu überprüfen gibt es file.
Ack. Aber, naja, zcat und bzcat beschweren sich ggfs. auf stderr ;)
etwas nicht schon (genau!) kennst, such in der manpage, lese das dann durch, verstehe es, probiere es aus, teste, spiel damit rum, usw...
Als Anregung/Uebung (*eg*):
a) Erklaere (im Detail) was die folgende Zeile macht und finde einen passenden Namen fuer 'x':
x() { echo "'${1/##*\/}' in '${1%\/*}'"; }
b) was macht dann anschliessend:
x $0
URGS! Ist das nicht ein wenig heftig? Ich meine für einen Anfänger?
Ja *hehe*. Aber wenn man _das_ mal auseinandergepfriemelt und dann auch noch verstanden hat, dann hat man IMO 3 Features der bash wohl zu einem guten Teil verstanden, was der Zweck der Uebung waere :)
Ich überlegt z.B warum da überhaupt was ersetzt wird, wo das ganze doch in '..' steht. Hm. Und wieso im ersten Ausdruck alles weggenommen wird, wenn etwas mit # beginnt. Ich hätte nur auf das, bzw. die # am Anfang getippt.
Ahja, das mit den '...' ist klar, es steht innerhalb von "..." ok. Und das alles ersetzt wird ist auch klar, wir sind in der bash und das ist kein RegExp. Ok, schon verstanden. Bin aber auch nicht unbedingt ein absoluter Anfänger. ;)
Siehste? Auch ich muss da mehrfach hinsehen und evtl. in man bash nachlesen ;) Es sollte ja eben eine "Nuss" zum knacken sein :)
PS: (v.a. auch an Bernd) sollte "man" nicht sowas mal sammeln? Und dann, sowohl mit der "offiziellen" Erklaerung des "Autors" und der/den besten "Loesungen" vielleicht veroeffentlichen??? Mich duenkt, es gibt "Bedarf" an sowas ;)
Was meinst Du mit "sowas"? Solche Aufgaben?
Jep. Aufgaben, die, wenn man sie versteht(!), einen bestimmten Bereich, ein bestimmtes Feature weitestgehend verdeutlichen... Ein anderes Beispiel koennte z.B. "' und ` und generell das "quoting" illustrieren... Am besten noch anhand/mit "kaputten" Dateinamen ;) Oder irgendwas zu 'for' und 'xargs' oder so :) Was konkretes muesste ich aber auch erst basteln... -dnh -- 16. When your language is nowhere near Turing-complete, syntactic sugar can be your friend. --- Eric S. Raymond, "The Cathedral and the Bazaar"