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, 7252 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

Powershell 5 BSOD

(1)

Tipp von agowa338 zum Thema Windows 10 ...

Ähnliche Inhalte
Batch & Shell
gelöst Powershell: CMD Kommando mit Parameter aufrufen (8)

Frage von bonnerjung zum Thema Batch & Shell ...

Heiß diskutierte Inhalte
LAN, WAN, Wireless
gelöst Server erkennt Client nicht wenn er ausserhalb des DHCP Pools liegt (28)

Frage von Mar-west zum Thema LAN, WAN, Wireless ...

Outlook & Mail
Outlook 2010 findet ost datei nicht (18)

Frage von Floh21 zum Thema Outlook & Mail ...

Windows Server
Server 2008R2 startet nicht mehr (Bad Patch 0xa) (18)

Frage von Haures zum Thema Windows Server ...