Führen Sie die Batchdatei aus einem beliebigen Ordner in Windows 7 aus

-1

Ich habe eine Batch-Datei namens CreateFolders.bat

Der Code lautet:

@echo off
md db in links output

Muss ich die Batch-Datei in einen bestimmten Ordner kopieren, bevor ich sie ausführen kann? Ist es überhaupt möglich, die Optionen zum Ausführen dieser bestimmten Batchdatei durch eine Shotcut-Taste oder eine Menüoption zu haben, wenn Sie mit der rechten Maustaste klicken?

Ich träume oder ist es möglich?

Heresh
quelle
Wenn Sie mit der rechten Maustaste klicken und die Batchdatei ausgeführt wird, in welchem ​​Ordner oder in welchen Ordnern soll die Batchdatei ausgeführt werden? Dies sollten auch zwei Fragen sein, von denen die erste lautet, wie Sie eine Batchdatei auslösen können Bedienen Sie, wenn Sie mit der rechten Maustaste klicken.
Barlop
Ich möchte, dass es auf dem aktuellen Ordner ausgeführt wird, auf den ich klicke.
Heresh
Ihre Frage ist ein bisschen fehlerhaft in der Art und Weise, wie sie geschrieben ist. Ich kenne die Antwort nicht, aber ich kann Ihnen helfen, die Frage zu formulieren. Möchten Sie, dass es sofort ausgeführt wird, wenn Sie mit der rechten Maustaste klicken oder mit einem Menü auswählen? Vielleicht könnten Sie fragen: A) Wie wird eine Batch-Datei ausgeführt, wenn Sie mit der rechten Maustaste auf einen Ordner klicken? B) Wie wird dem Kontextmenü mit der rechten Maustaste ein Element hinzugefügt? Programm / Batch-Datei übergibt den Pfad des Ordners als Parameter an das Programm.
Barlop
Dies kann helfen , superuser.com/questions/444726/...
barlop

Antworten:

0

Schauen Sie sich autohotkey an, es ist sehr flexibel. Man muss ein bisschen Scripting verwenden, aber es ist nicht so schwer.

Bearbeiten: So fügen Sie der Antwort weitere Details hinzu:

Als erstes müssen Sie den Pfad mit Argumenten in Ihrem Schläger erhalten

@echo off
md %1/mydir

Ich habe diesen Code geändert, den ich hier gefunden habe. Autohotkey-Dateipfad, damit Sie ein .bat im gewünschten Pfad ausführen können. Der folgende Code verwendet die Zwischenablage, um den Pfad zu kopieren, in dem Sie sich gerade befinden.

F1::
MsgBox, % gst()  ; Path
F8::
Run C:\MyBat.bat % gst() ; Execute your bat receiving the path
return
F7::
Run C:\MyBat.bat,,Hide ; Execute your bat without seeing the black window
return

; GetSelectedText or FilePath in Windows Explorer  by Learning one 
gst()
{   
        IsClipEmpty := (Clipboard = "") ? 1 : 0
        if !IsClipEmpty 
        {
                ClipboardBackup := ClipboardAll
                While !(Clipboard = "") 
                {
                      Clipboard = 
                      Sleep, 10
                }
        }
        Send, ^c
        ClipWait, 0.1
        ToReturn := Clipboard, Clipboard := ClipboardBackup
        if !IsClipEmpty
        ClipWait, 0.5, 1
        Return ToReturn
}

Wobei F1, F7, F8 die Tasten sind, die Sie drücken müssen, um Ihr Programm ausführen zu können

Joe
quelle
1
Sie sollten mehr Details
angeben
Gib mir Bescheid. Vergiss nicht, wenn ich hilfreich war, dies als Antwort zu markieren, nachdem du es zum Laufen gebracht hast.
Joe