Προς το περιεχόμενο

Batch File Pou Na Anoigei Ena Fakelo???


moameth

Προτεινόμενες αναρτήσεις

Δημοσ.

Kalhspera se olous....

Tha eithela na me voithisete na ftiaxo ena batch file to opoio na kanei ths exhs douleia.

 

me to pou to kalo na me rotaei se pia ip h se pio pc na bei (Lan) kai afou tou dino to onoma h thn ip na mou anoigei to antoistoixo pc, alla me ton explorer.

 

opoios borei as voithisi.

 

Thx ek ton isteron......

Δημοσ.

Για να σε ρωτάει θέλει λίγο δουλειά παραπάνω, καθώς τα batch files δεν δέχονται user input απο default αν δεν κάνω λάθος. Αλλά παίρνουν command-line parameters.

>
@echo off
start /w \\%1

Αν καλέσεις το παραπάνω αρχείο με το Path Που θέλεις να ανοίξεις θα δουλέψει.

 

π.χ. "start.bat PC01" θα σου εμφανίσει τα shares του PC01.

Δημοσ.

Μέχρι να έρθουν οι μαιτρ των batch files, δοκιμάστε κι αυτό:

 

>@echo off
setlocal
set /p mplampla=Type name or IP of network computer: 
start /w \\%mplampla%

Δημοσ.

Euxaristo gia ola.

auta pou steilate doulevoun alla ta exo kanei.

the kati pio sygkekrimeno.

dhladh auto pou anafero sto proigoumeno post mou

 

opoios xerei as postari....

thx se olous

Δημοσ.

Το να ρωτάει την ip; Στο είπε ο Eusebius με τη set.

 

Eusebius τελικά είσαι μαιτρ, μέχρι και setlocal έβαλες!

Αντί για το start μπορεί να χρησιμοποιηθεί κατευθείαν το explorer.exe, ώστε να μπορεί να δεχτεί και παραμέτρους:

http://www.daube.ch/share/win03.html

Δημοσ.

Paidia sorry kai pali

alla mhpos mporei kapoios na mou pei akrivos ths entoles pou dinei o

Eusebius pio pano ti knaoun?

 

giati den mou vgainei

 

metao to /p ti vazo?

pou se rotaei pio pc na anoixei?

 

plzzzz...

kai sorry kai pali

Δημοσ.

moameth, τίποτα δεν χρειάζεται να βάλεις. :-) Εκτέλεσέ το όπως είναι και όταν σου ζητήσει όνομα ή IP, δώσε και χτύπα Enter.

 

alkisg, την setlocal από σένα την έμαθα. :-) Πιο πριν μηδένιζα μία-μία τις μεταβλητές. :-P

Δημοσ.

EUSEBIUS ΤΙ ΕΝΝΟΕΙΣ?

 

ΓΡΑΦΩ

 

@echo off

setlocal

set /p mplampla=Type name or IP of network computer:

start /w \\%mplampla%

 

ΑΥΤΟ ΚΑΙ ΔΟΥΛΕΥΕΙ?

 

ΔΕΝ ΠΡΕΠΕΙ ΝΑ ΥΠΑΡΧΕΙ ΜΙΑ ΜΕΤΑΒΛΗΤΗ ΚΑΠΟΥ ΓΙΑ ΝΑ ΠΕΡΝΕΙ ΜΑΙ ΤΙΜΗ ΚΑΙ ΝΑΤΗΝ ΧΡΗΣΙΜΟΠΟΙΕΙ?

ΑΥΤΟ ΠΑΝΤΩΣ ΠΟΥ ΓΡΕΦΕΙΣ ΠΑΡΑΠΑΝΟ ΔΕΝ ΔΟΥΛΕΥΕΙ.

 

ΜΠΟΡΕΙΣ ΝΑ ΣΤΕΙΛΕΙΣ ΑΚΡΙΒΩΣ ΕΝΑΝ ΚΩΔΙΚΑ ΚΑΙ ΝΑ ΧΡΕΙΣΤΗ ΝΑ ΑΛΛΑΞΩ ΜΟΝΟ ΤΟ ΟΝΟΜΑ Η ΤΗΝ ΙP ????

 

plzzzzzzzzzz!!!!!!!!!!!!

Δημοσ.

ok Eusebius doulevei. ola koble.

tora kati allo an boreite na voithisete.

pos auto to kano .exe

 

exo ena software "quick batch file compiler", otan to ftiaxno apo auto se exe.

den mou anoigei gia na valo timh

 

yparxei kanei tropos?

 

kai thx gia ola

Δημοσ.

Τί σε πειράζει έτσι που είναι; Για την κονσόλα;

 

Μπορεί να χρειαστεί να φτιάξεις πρόγραμμα άμα το θες με GUI. Ή να το κάνεις με σκριπτόγλωσσα. Ή να βρεις κανένα προγραμματάκι σαν αυτό που έχεις, αλλά να υποστηρίζει και την παράμετρο /p της set... Ιδέα δεν έχω...

Δημοσ.

Αλλαγες (και δημιουργια) στις μεταβλητες με το set δεν ειναι μονιμες. Υπαρχουν μονο για το συγκεκριμενο instance του cmd.exe, οποτε μην τις φοβαστε τοσο. Ακομα και να αλλαξετε μια που ηδη υπαρχει η αλλαγη δεν θα μεινει.

 

Μονιμες αλλαγες στις μεταβλητες περιβαλλοντος γινονται με την εντολη setx

Δημοσ.

Δηλ. στα batch files είναι περιττό να τις καθαρίζεις;

 

Κάποτε που το είχα κοιτάξει κάτι τέτοιο είχα καταλάβει, αλλά δεν ήμουνα σίγουρος και έτσι εξαλουθώ να το κάνω...

Δημοσ.

Αυτό που λέει ο Bpsus ισχύει, αλλά γενικά η setlocal καλό είναι να χρησιμοποιείται:

 

Π.χ. κάνουμε στο batch file μας

set myvar=1

 

Ο ανυποψίαστος χρήστης, καλεί από το ίδιο shell το επόμενο batch file, π.χ. run_autocad.bat

Το run_autocad όλως τυχαίως βασίζεται στη μεταβλητή περιβάλλοντος myvar, η οποία υποτίθεται ότι είναι global, αλλά την κάναμε overwrite στο προηγούμενο batchfile. Κι έτσι δεν τρέχει ή έχει παρενέργειες...

 

Σπάνιο σενάριο, αλλά όχι και απίθανο...

Αν δούμε τις μεταβλητές περιβάλλοντος 100 χρηστών, σίγουρα θα βρούμε ονόματα global μεταβλητών που θα μπορούσαμε κατά λάθος να τις χρησιμοποιήσουμε σε κάποιο batch file: tmp, temp, prompt, user, home...

Αρχειοθετημένο

Αυτό το θέμα έχει αρχειοθετηθεί και είναι κλειστό για περαιτέρω απαντήσεις.

  • Δημιουργία νέου...