AntonisA26 Δημοσ. 20 Φεβρουαρίου 2022 Δημοσ. 20 Φεβρουαρίου 2022 (επεξεργασμένο) Καλησπέρα σας, είμαι φοιτητής του Πολυτεχνείου Κρήτης και εργάζομαι πάνω στην διπλωματική μου εργασία αυτό τον καιρό. Το θέμα εν ολίγοις είναι προσομοίωση ενός δικτύου νερού με το πρόγραμμα EPANET και προσέγγιση αποτελεσμάτων με χρήση τεχνικών τεχνητής νοημοσύνης. Την δεδομένη στιγμή έχω φτιάξει ένα δίκτυο και θέλω στην ουσία να φτιάξω ένα αρχείο script σε DOS, δηλαδή command line που θα ανοίγει αυτόματα το EPANET , θα τρέχει το δίκτυο που έχω μέσα πολλές φορές και ύστερα θα κλείνει το EPANET ή αν υπάρχουν και άλλοι τρόποι να γίνει αυτό. Απλά επειδή είμαι καινούργιος στον προγραμματισμό σας ρωτάω για να βγάλω και γω άκρη ή αν μπορείτε κάπως να με βοηθήσετε με έναν μπούσουλα. Συγγνώμη αν ζητάω πολλά και σας ευχαριστώ εκ των προτέρων. Επεξ/σία 20 Φεβρουαρίου 2022 από AntonisA26
White_Cat Δημοσ. 9 Μαρτίου 2022 Δημοσ. 9 Μαρτίου 2022 Καλημέρα ! Απ' ό,τι καταλαβαίνω προσπαθείς να φτιάξεις ένα script το οποίο να περιλαμβάνει εντολές του Dos. Στην ορολογία του Dos αυτά τα αρχεία λέγονται batch files. Το να φτιάξεις ένα τέτοιο αρχείο είναι πολύ εύκολο. Απλά ανοίγεις έναν πολύ απλό επεξεργαστή κειμένου σαν το Σημειωματάριο (notepad) των Windows. Μέσα στο notepad γράφεις ακριβώς τις εντολές που θέλεις να εκτελεστούν όταν τρέξει το συγκεκριμένο script. Όπως ακριβώς τις γράφεις και στην command line. Απλά γράφεις μία και μόνο εντολή σε κάθε γραμμή. Από εκεί και πέρα σώζεις το αρχείο με επέκταση .bat (όχι .txt), έτσι ώστε το Dos να μπορέσει να το αναγνωρίσει ως batch file και να το εκτελέσει όταν το τρέξεις. Αν κάνεις το λάθος να το σώσεις πχ ως script.txt θεωρείται απλό αρχείο κειμένου, οπότε τότε πρέπει να το μετονομάσεις (rename) με μία εντολή όπως παρακάτω : ren script.txt script.bat Ενα batch file που θα τρέχει από Dos Command Line τα αρχεία του EPANET θα είναι κάπως έτσι : [code] ==================================== @echo off rem rem -- EPANET4D.BAT (DOS Batch File to Implement EPANET Menu Program) rem if "%2" == "" goto err1 if "%1" == "%2" goto err2 if not exist %1 copy template %1 if exist %2 del %2 :start cls echo. echo. echo E P A N E T M E N U echo ================================== echo. echo 1 - Edit input file %1 echo. echo 2 - Run EPANET echo. echo 3 - View report file %2 echo. echo 4 - Print report file %2 echo. echo 5 - Quit echo. echo ================================== echo. echo Type the number of your selection: getdgt if errorlevel 6 goto start if errorlevel 5 goto quit if errorlevel 4 goto printout if errorlevel 3 goto view if errorlevel 2 goto run if errorlevel 1 goto edit goto start :edit rem rem ********* Launch editor program ********* te.exe %1 goto start :run cls if "%epanet%"=="32" goto run32 epanet16.exe %1 %2 %3 pause goto start :run32 set DOS4G=quiet echo Running 32-bit version of EPANET... dos4gw epanet32.exe %1 %2 %3 set DOS4G= pause goto start :view cls if not exist %2 goto err3 rem rem ********* Launch file viewer ********* browse.com %2 goto start :printout cls if not exist %2 goto err3 print %2 goto start :err1 echo Correct syntax is: EPANET4D inpfile rptfile echo where inpfile is the name of an input file echo and rptfile is the name of a report file. echo. goto end :err2 echo Cannot use same name for input and report files. echo. goto end :err3 echo Report file %2 has not been created yet. echo. pause goto start :quit cls :end [/code] Ελπίζω λίγο να βοήθησα, Να είσαι καλά, Ο Άσπρος Γάτος Το tag [code] ... [/code] μην το βάλεις μέσα στο batch file. Το έβαλα απλά για να δείξω ότι ό,τι γράφει εκεί μέσα είναι κώδικας. Αλλά δεν καταλαβαίνω καθόλου γιατί ο browser δεν το βγάζει σωστά.
Προτεινόμενες αναρτήσεις
Δημιουργήστε ένα λογαριασμό ή συνδεθείτε για να σχολιάσετε
Πρέπει να είστε μέλος για να αφήσετε σχόλιο
Δημιουργία λογαριασμού
Εγγραφείτε με νέο λογαριασμό στην κοινότητα μας. Είναι πανεύκολο!
Δημιουργία νέου λογαριασμούΣύνδεση
Έχετε ήδη λογαριασμό; Συνδεθείτε εδώ.
Συνδεθείτε τώρα