Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

Aktuelle Themen

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit
Kommentar vom Moderator Biber am 08.12.2009 um 18:47:50 Uhr
Grundsätzlich funktioniert dies wunderbar.
Oh, wie ich diese Einleitung liebe.
Den nächsten Satz höre ich dann schon immer kommen bevor ich ihn sehe. ..
GELÖST

Parameter beim Aufrufen einer Batch-Datei?

Frage Entwicklung PHP

Mitglied: Sherwood

Sherwood (Level 1) - Jetzt verbinden

08.12.2009, aktualisiert 13.12.2009, 7264 Aufrufe, 6 Kommentare

Hallo zusammen

Ich möchte gerne eine Batch-Datei mit PHP ausführen.

Dies löse ich zurzeit ganz simpel, mit folgendem Befehl:

01.
$pfad = "C:\\temp\my\ordner\test.bat"
02.
exec($pfad, $output, $return);
Grundsätzlich funktioniert dies wunderbar.
Mein Problem jedoch; der Befehl welchen ich mit dem Batch ausführen möchte benötigt eine Passworteingabe.
Das Passwort kann ich natürlich auch in der Batch-Datei selbst definieren. Viel besser wäre es jedoch, wenn es vom User selbst beim Aufrufen angegeben werden könnte.

Meine Frage: Ist es möglich, dass ich beim Aufrufen der Batch-Datei irgendwelche Parameter übergeben kann?
So könnte ich das Passwort mit PHP abfragen bzw. überprüfen und anschliessen der Batch-Datei übergeben damit diese den Befehl ausführen kann..

Oder: Kennt jemand eine andere Lösung dafür?

Mit freundlichen Grüssen
Sherwood
Mitglied: Snowman25
08.12.2009 um 14:34 Uhr
Probier mal, deine Parameter einfach an die Pfad-variable dran zu hängen. Natürlich mit einem Leerzeichen dazwischen, also so:
01.
$pfad = "C:\\temp\my\ordner"
02.
$params = " passwort"
03.
$pfad = $pfad.$passwort
04.
exec($pfad, $output, $return);
Achte auf die Leerzeichen und Anführungsstriche!
Bitte warten ..
Mitglied: Sherwood
08.12.2009 um 14:45 Uhr
Danke schonmal für die Hilfe!

Also ich mache jetzt folgendes:

01.
$pfad = "C:\\xampplite\htdocs\test\start.bat password"
02.
exec($pfad, $output, $return);
Bei diesem Aufruf ändert sich grundsätzlich nichts. Da jedoch keine Fehlermeldung erscheint und das Starten der Batch-Datei ansich immer noch funktioniert kann dies meiner Meinnung nach nicht der falsche weg sein

Muss ich diesen Parameter nun irgendwie abfangen in der Batch-Datei ? Oder sollte dies nun gleich funktionieren?
Bitte warten ..
Mitglied: Snowman25
08.12.2009 um 14:51 Uhr
natürlich musst du in der batch den aufrufparameter %1 irgendwie verarbeiten, also dort einbringen, wo es nötig ist.
Am besten, du postest einfach mal den ausschnitt, in dem du das PW brauchst
Bitte warten ..
Mitglied: Sherwood
08.12.2009 um 15:04 Uhr
meinst du so?:

(der Parameter -p ist für das Passwort)
01.
psservice \\gfp000475PC -u dom\dom01692 -p %1 start "HTTP SSL"
Bitte warten ..
Mitglied: Sherwood
08.12.2009 um 15:06 Uhr
Ja wunderbar habs gleich ausprobier und hat funktioniert! :D

Vielen Dank für die Hilfe!

So sind auch mehere Parameter möglich oder?
Bitte warten ..
Mitglied: Snowman25
08.12.2009 um 15:54 Uhr
ja, der 2. Parameter heißt dann sinngemäß %2
Das geht bis 9 Parameter also %9.
Einzelne Bausteine, die ein Leerzeichen enthalten, solltest du in Anführungszeichen stecken, aber das versteht sich ja von selbst
Bitte warten ..
Neuester Wissensbeitrag
Windows 10

Sticky Notes - Autostart unterbinden

Tipp von Pedant zum Thema Windows 10 ...

Ähnliche Inhalte
Batch & Shell
gelöst Verlinkung erstellen Batch Datei mit for Schleife (2)

Frage von rusdav zum Thema Batch & Shell ...

Batch & Shell
gelöst Batch Datei Kopieren (17)

Frage von Frager zum Thema Batch & Shell ...

Batch & Shell
Batch datei zum Hochladen von Datein auf ftp server (2)

Frage von loxymus zum Thema Batch & Shell ...

Heiß diskutierte Inhalte
Batch & Shell
gelöst Base64 Decode (Batch,VBS) (26)

Frage von clragon zum Thema Batch & Shell ...

Router & Routing
Tipps für Router (ca. 100 clients, VPN) (17)

Frage von oel-auge zum Thema Router & Routing ...