
Pomoc s vytvorenim .bat suboru
Zdar borci. V praci sa dost casto pripajam na pocitac v sieti odkial stahujem subory cez ftp. Nedavno som cital o .bat suboroch ktore automaticky spustaju urcite prikazy. Skusal som to aj sam naprogramovat, ale neuspesne. Takze potrebujem nasledovne:
1. pripojit sa na: ftp -i 10.0.0.222
2. po vyzvani na zadanie uzivatelskeho meno zadat: xxx
3. po vyzvani na zadanie uzivatelskeho hesla zadat: yyy
4. zmenit zlozku na: cd /v/disk/subor
a nakoniec nieco tazsie
5. potrebujem stiahnut subory pomocou prikazu "mget" ABC.20 az ABC.30, tak aby som nemusel za kazdym zadavat mget ABC.20, mget ABC.21, mget ABC.22,... ale len zadal rozsah ABC.20- ABC.30.
Dakujem za pomoc.
dodatocna otazka: to ABC.20 az ABC.30 bude stale rovnake alebo zakazdym ine (a chces to nejako zadavat ako parameter)?
Cisla za bodkou su zakazdym ine. Retazec pred bodkou je stale rovnaky.
On to IMHO myslel trochu jinak. Jestli ten řetězec před tečkou bude vždy ABC, nebo jestli to dneska bude DEF a zítra zase XYZ.
Ano ten retazec pred bodkou bude vzdy ABC, ale tiez cisla za bodkou sa menia kazdy den.
Ok takze urobil som ti takyto .bat, nazvi to napr. stiahni.bat:
tento bat vytvori script subor ftpscrpt.txt, ten nazov suboru si mozes zmenit ako chces. Takisto to co v tom script subore bude si mozes modifikovat (pridavat alebo modifikovat si tie prikazy echo). Prvy riadok ma len jedno > to znamena povodny subor ftpscrpt.txt sa premaze, dalsie riadkky maju dve >> to znamena ze sa do suboru ftpscrpt.txt pridava (to co v nom bolo predtym sa nepremaze).
Cyklus for ti tam pridava prikazy get SUBOR.cislo
Ten .bat zavolas s parametrami zaciatocne a posledne cislo suboru, napr.
stiahni.bat 10 19
urobi script subor kde bude stahovanie suborov SUBOR.10 az SUBOR.19
zaviolaj si ten .bat, pozri si ten vytvoreny script subor ftpscrpt.txt (napr. v poznamokovom bloku), a pripadne si zmodifikuj ten .bat ako chces. Az budes s vytvorenym script suborom spokojny, tak si na koniec toho .bat pridaj aj prikaz ftp, nech ten bat hned aj spusti ftp:
P.S. priklaz lcd (treti riadok) je zmena lokalneho adresara (na lokalnom disku), to si zmen ako chces, a dalsie prikazy cd su zmena adresara na serveri, to si tiez zmen ako chces. Aj nazov suborov (to "SUBOR" v tom cykle for) si zmen ako chces.
P.S.2. ak v adresari nebudes mat nic ine spustitelne s nazvom "stiahni", tak nemusis ani pisat priponu .bat, t.j. namiesto
stiahni.bat 10 19
staci napisat
stiahni 10 19
Daj vediet ci ti ten .bat staci.
Ok, tak ci som to spravne pochopil. Tebou vytvoreny .bat subor najprvj do textoveho suboru ftpscrpt.txt zapise prikazy, ktore po pridani "ftp.exe -a -i -s:ftpscrpt.txt 10.0.0.222" ako posledny riadok, bude automaticky spustat z tohto textoveho dokumentu?
Ano tak to funguje. Kazdy prikaz echo zapise to co je za nim do toho suboru ftpscrpt.txt. Prikaz for je cyklus (od 1.parametra, krok 1, po 2.parameter) aby ti to urobilo v ftpscrpt.txt aj prikazy get SUBOR.cislo get SUBOR.cislo+1 atd.
Potom nakonci ftp.exe vykonava prikazy z toho pripraveneho script suboru. Na zaciatku scriptu ma byt prvy riadok meno a druhy riadok heslo (aspon tak som to pochopil podla tych popisov na ktore su linky v diskusii vyssie).
Druhy a treti riadok toho .bat nemozu byt rovnake !!!
Druhy musi mat na konci >ftpscrpt.txt
treti (a vsetky dalsie) musi mat na konci >>ftpscrpt.txt
Vysvetloval som to v tom prispevku ze co znamena > a co znamena >>
Preistotu opakujem: ten bat sa spusta s parametrami (pociatocne a koncove cislo suboru ktory chces stiahnut). Ak tomu nerozumies tak sa radsej pytaj comu nerozumies. Inac som myslel ze chces len "pomoct s vytvorenim bat"