Knast Skrevet 29. januar 2009 Del Skrevet 29. januar 2009 Jeg jobber med et program som sender et program med send-kommandoen til en mvs-maskin. Noen ganger får jeg feil i sendingen, grunnet at mvs-maskinen er logget av eller at filen er større en avsatt plass i datasettet (som ikke er eb konstant størrelse). Jeg er ute etter en løsning for å kunne printe om sendingen var vellykket eller ikke. Har prøvd med errorlevel, men ser ikke ut til at denne reagerer på feil. Eksempel: echo off send dataset1 server.dataset1 ascii crlf echo Errorlevel: %errorlevel%. if %errorlevel%==1 (color 0C) Gir: >echo off PCSXFER010 - PC-filen c:\test\dataset1 ble ikke funnet i den oppgitte banen. Errorlevel 0. Noen forslag? Har tenkt på å logge på mvs med ftp og kjøre et compare-script, men om det er mulig vil jeg helst løse dette med å sjekke svaret i dos. Lenke til kommentar
Giddion Skrevet 29. januar 2009 Del Skrevet 29. januar 2009 Jeg har 2 forslag og begge har ganske høy jalla faktor. Jeg har ikke vært så borti avansert batch skripting så det er ikke sikkert det er mulig. Løsningene går ut på å bruke piping for så analysere det. eks. 1 send DineKomandoer > output.txt eks. 2 send DineKomandoer 2> Error.txt Det først eksemplet dumpes alt til output.txt og så kan du muligens bruke find/findstr til å hjelpe deg.. hjalp det? Hvis de som har laget send bruker error "kanalen" vil eks. 2 gi innhold i error.txt bare ved feil... kan du bruke det til noe? lykke til Lenke til kommentar
Knast Skrevet 30. januar 2009 Forfatter Del Skrevet 30. januar 2009 (endret) Jeg har 2 forslag og begge har ganske høy jalla faktor.Jeg har ikke vært så borti avansert batch skripting så det er ikke sikkert det er mulig. Løsningene går ut på å bruke piping for så analysere det. eks. 1 send DineKomandoer > output.txt (Opprinnelig svar: Det jeg sender er innholdet av tekstfiler, som gjerne er på 1-3 MB. Blir litt klønete å få alt dette inn i log-filer. Problemet mitt er at jeg ikke kan vite om send-kommandoen var vellykket eller ikke, uten fysisk å se etter feilmeldingen. Noe jeg kunne tenke meg å slippe siden jeg skal lese inn et tusentalls filer.) Hei igjen! Fikk tenkt meg om en gang til og det er ikke sikkert at det forslaget var så dumt likevel.. For å kontinuerlig sjekke om kommandoen var velykket vil jeg nå trenge å sjekke om den siste linjen i output.txt er " Filoverf<ringen er ferdig". Tror jeg vil klarer å løse dette med; del /Q output.txt send ... >> output.txt find "ferdig" output.txt goto lbl%errorlevel% :lbl0 Kommandoer etter vellykket overføring pause exit :lbl1 Kommandoer etter feilaktig overføring pause exit Kommenter gjerne om jeg gjorde dette feil eller tungvint. Uansett; takk for hjelpen! Endret 30. januar 2009 av Knast Lenke til kommentar
Giddion Skrevet 30. januar 2009 Del Skrevet 30. januar 2009 hehe bra du fikk det til og det så ca hva jeg tenkte meg, men jeg viste ikke hvordan man skal få det til Det er jo en stygg hack, men det funker Lenke til kommentar
Anbefalte innlegg
Opprett en konto eller logg inn for å kommentere
Du må være et medlem for å kunne skrive en kommentar
Opprett konto
Det er enkelt å melde seg inn for å starte en ny konto!
Start en kontoLogg inn
Har du allerede en konto? Logg inn her.
Logg inn nå