Fórum Ubuntu CZ/SK
Ubuntu pro osobní počítače => Software => Příkazový řádek a programování pro GNU/Linux => Téma založeno: plangy 15 Dubna 2009, 19:43:10
-
Dobrý den, chtěl jsem si trochu zjednodušit život při stahovaní učebnic tak jsem si napsal tohle:
#!/bin/bash
cd /home/plangy/Dokumenty/vscht/
mkdir Biologie
cd Biologie
for i in 00{1..9};
do wget http://vydavatelstvi.vscht.cz/knihy/uid_isbn-80-7080-587-0/pdf/$i.pdf;
done
for i in 0{10..99};
do wget http://vydavatelstvi.vscht.cz/knihy/uid_isbn-80-7080-587-0/pdf/$i.pdf;
done
for i in {100..999};
do wget http://vydavatelstvi.vscht.cz/knihy/uid_isbn-80-7080-587-0/pdf/$i.pdf;
done
pdftk *.pdf output biologie.pdf
Já vim je to asi podle vás hroznej bastl, ale pochopte, že co se týče linuxu, tak jsem absolutní samouk a googleuk :)
Chtěl bych tam mít něco, co by mi zajistilo, abych nemusel do toho kodu zadavat tu stranku. Abych to pustil třeba takhle:
$ Download.sh http://vydavatelstvi.vscht.cz/knihy/uid_isbn-80-7080-587-0/pdf/
Nevim jestli jsem to dobře vysvětlil. Ale pokud to někdo chápe a ví jak to vyřešit, tak budu moc rád když mi pomůžete.
Předem moc děkuju
-
Jak by řekl NTZ, `man bash` ;D
Když předáváš skriptu parametry jsou dostupné pod proměnýmy $1 - $n
-
#!/bin/bash
echo "prvni parametr $1"
echo "druhy parametr $2"
[prema@fedora ~]$ ./param.sh parametr1 parametr2
prvni parametr parametr1
druhy parametr parametr2
-
Moc děkuju za cennou radu :)
-
umh .. nevedel jsem, ze v bashi lze pouzit takovy zapich pro for .. nicmene rekl bych, ze standartni metoda je ::
for x in `seq 1 10`; do foo; done
for((x=1;x<11;x++)) { foo; }
jinak doporucuju
http://docs.linux.cz/programming/interpreted/bashdoc-1.4/ ## cesky
http://tldp.org/LDP/abs/html/ ## evergreen, asi to nejlepsi dostupne
`man bash` ## taky neni rozhodne k zahozeni
-
No ten divnej zápis rozsahu jsem použil kvuli tomu, že ty stránky jsou očíslovaný s těma nulama (001, 059, ...). Dík za odkazy.