Ausgewählter Dateiname als Parameter in Kommandozeile einfügen
Moderators: white, Hacker, Stefan2
Ausgewählter Dateiname als Parameter in Kommandozeile einfügen
Hallo.
Der Total Commander hat mittlerweile einfach zu viele Funktionen.
Gerade suche ich nach einem Parameter, um den ausgewählten Namen als Parameter in der Kommandozeile nutzen zu können.
Beispiel: Ausgewählt im aktiven Fenster ist die Datei "start.html" und ich möchte ein mein Programm "MeinTool.exe" mit der Datei aufrufen. Aktuell tippe ich dazu "MeinTool.exe start.html" in die Kommandozeile ein. Ich dachte, das würde auch mit "MeinTool.exe %S" gehen. Aber da habe ich wohl was falsch verstanden.
Hintergrund: Das Tool wird immer mal wieder mit unterschiedlichen Dateien gestartet. Und da könnte ich dann einfach den letzten Befehl aus der Historie nutzen. Das spart jedes Mal einige Sekunden.
Wo liegt mein Fehler?
Der Total Commander hat mittlerweile einfach zu viele Funktionen.
Gerade suche ich nach einem Parameter, um den ausgewählten Namen als Parameter in der Kommandozeile nutzen zu können.
Beispiel: Ausgewählt im aktiven Fenster ist die Datei "start.html" und ich möchte ein mein Programm "MeinTool.exe" mit der Datei aufrufen. Aktuell tippe ich dazu "MeinTool.exe start.html" in die Kommandozeile ein. Ich dachte, das würde auch mit "MeinTool.exe %S" gehen. Aber da habe ich wohl was falsch verstanden.
Hintergrund: Das Tool wird immer mal wieder mit unterschiedlichen Dateien gestartet. Und da könnte ich dann einfach den letzten Befehl aus der Historie nutzen. Das spart jedes Mal einige Sekunden.
Wo liegt mein Fehler?
Re: Ausgewählter Dateiname als Parameter in Kommandozeile einfügen
Ein Button mit anlegen und diesen drücken, wenn der Cursor auf der gewünschten Datei (hier start.html) steht.
Grüße
Dalai
Code: Select all
Kommando: MeinTool.exe
Parameter: %P%N
Grüße
Dalai
#101164 Personal licence
Ryzen 5 2600, 16 GiB RAM, ASUS Prime X370-A, Win7 x64
Plugins: Services2, Startups, CertificateInfo, SignatureInfo, LineBreakInfo - Download-Mirror
Ryzen 5 2600, 16 GiB RAM, ASUS Prime X370-A, Win7 x64
Plugins: Services2, Startups, CertificateInfo, SignatureInfo, LineBreakInfo - Download-Mirror
Re: Ausgewählter Dateiname als Parameter in Kommandozeile einfügen
Danke! Das ging ja fix!
Geht das auch ohne Button? Was ich (leider) in meinem Beispiel nicht angegeben habe: Nach dem Dateinamen kommen noch eigene Parameter, die nicht immer gleich sind. Also:
MeinTool.exe start.html /P1 /P2 /P3
%P%N funktioniert als Kommandozeile leider nicht.
Geht das auch ohne Button? Was ich (leider) in meinem Beispiel nicht angegeben habe: Nach dem Dateinamen kommen noch eigene Parameter, die nicht immer gleich sind. Also:
MeinTool.exe start.html /P1 /P2 /P3
%P%N funktioniert als Kommandozeile leider nicht.
Re: Ausgewählter Dateiname als Parameter in Kommandozeile einfügen
Die Kommandozeile unterstützt soweit ich weiß die für Buttons üblichen Platzhalter nicht. Die einzige mir bekannte Möglichkeit, den Dateinamen unter dem Cursor in die Kommandozeile einzufügen, ist Strg+Enter (nur Dateiname) oder Strg+Shift+Enter (Dateiname mit absolutem Pfad) zu drücken.
Grüße
Dalai
Grüße
Dalai
#101164 Personal licence
Ryzen 5 2600, 16 GiB RAM, ASUS Prime X370-A, Win7 x64
Plugins: Services2, Startups, CertificateInfo, SignatureInfo, LineBreakInfo - Download-Mirror
Ryzen 5 2600, 16 GiB RAM, ASUS Prime X370-A, Win7 x64
Plugins: Services2, Startups, CertificateInfo, SignatureInfo, LineBreakInfo - Download-Mirror
Re: Ausgewählter Dateiname als Parameter in Kommandozeile einfügen
Eventuell helfen dir diese Möglichkeiten weiter?:
dann wird dir das Kommando vor der Ausführung noch einmal angezeigt und kann so angepasst werden.
(oder weise dem UDC ein Alias zu und verwende die "%A"-Platzhaltern)
Mehr Details dazu gibt es hier:
TCs' Benutzer-definierte Kommandos (BDK) (em_xxxxx) UserCmd.ini
https://ghisler.ch/board/viewtopic.php?p=346779#p346779
User-Defined Command (UDC) (usercmd.ini) em_command
https://ghisler.ch/board/viewtopic.php?p=344777#p344777
Du kannst das Kommando auch in der usercmd.ini anlegen (UserDefinedCommando) und ihm ein Tastaturkürzel zuweisen.
Du kannst dem Kommando-Parameter ein führendes "?" Fragezeichen hinzufügen,
dann wird dir das Kommando vor der Ausführung noch einmal angezeigt und kann so angepasst werden.
(oder weise dem UDC ein Alias zu und verwende die "%A"-Platzhaltern)
Mehr Details dazu gibt es hier:
TCs' Benutzer-definierte Kommandos (BDK) (em_xxxxx) UserCmd.ini
https://ghisler.ch/board/viewtopic.php?p=346779#p346779
User-Defined Command (UDC) (usercmd.ini) em_command
https://ghisler.ch/board/viewtopic.php?p=344777#p344777
Re: Ausgewählter Dateiname als Parameter in Kommandozeile einfügen
Tatsächlich ist das mein erster Versuch gewesen:
[em_MeinTool]
cmd=MeinTool
param=%N
Da dann ein Shortcut drauf und fertig. Allerdings habe ich hier nicht den leider vorkommenden Fall, dass ich noch weitere Parameter brauche. Ich könnte mir also mehrere Befehle erstellen, die dann jeweils mit den richtigen Parametern ausgeführt werden würden:
[em_MeinTool1]
cmd=MeinTool
param=%N /P1
[em_MeinTool2]
cmd=MeinTool
param=%N /P2
Müsste das so aussehen?
Und Mit dem "%A":
[em_MeinTool]
cmd=MeinTool
param=%N %A
Das funktioniert leider nicht. Er startet den Befehl und ignoriert den "%A" Parameter. Also arbeitet so, als wenn kein Parameter angegeben wäre. Ich bekomme auch keine Möglichkeit, den Parameter anzugeben.
Vielleicht mag ja mal jemand einen GPT erstellen und den mit diesem Forum und allen Anleitungen füttern???
[em_MeinTool]
cmd=MeinTool
param=%N
Da dann ein Shortcut drauf und fertig. Allerdings habe ich hier nicht den leider vorkommenden Fall, dass ich noch weitere Parameter brauche. Ich könnte mir also mehrere Befehle erstellen, die dann jeweils mit den richtigen Parametern ausgeführt werden würden:
[em_MeinTool1]
cmd=MeinTool
param=%N /P1
[em_MeinTool2]
cmd=MeinTool
param=%N /P2
Müsste das so aussehen?
Und Mit dem "%A":
[em_MeinTool]
cmd=MeinTool
param=%N %A
Das funktioniert leider nicht. Er startet den Befehl und ignoriert den "%A" Parameter. Also arbeitet so, als wenn kein Parameter angegeben wäre. Ich bekomme auch keine Möglichkeit, den Parameter anzugeben.
Vielleicht mag ja mal jemand einen GPT erstellen und den mit diesem Forum und allen Anleitungen füttern???
Re: Ausgewählter Dateiname als Parameter in Kommandozeile einfügen
Du könntest testen mit drei Parametern:
Code: Select all
[em_myalias1]
button=
cmd=cmd.exe /k echo
param=%A2 %N %A3 %A1
Die Reihenfolge ist absichtlicht falsch, um Fehler zu erkennen.
Re: Ausgewählter Dateiname als Parameter in Kommandozeile einfügen
Wenn ich das teste und auf einen Button lege passt das soweit. %N ist " " (also ein Leerzeichen) und die Parameter werden so gelistet, wie ich sie angegeben habe. Aber dann habe ich die Parameter ja fix zum Befehl angefügt.
Vermutlich baue ich mir einen Haufen Buttons, die dann jeweils den gewünschten Parametersatz haben.
Vermutlich baue ich mir einen Haufen Buttons, die dann jeweils den gewünschten Parametersatz haben.
Re: Ausgewählter Dateiname als Parameter in Kommandozeile einfügen
Füge an den Anfang des Parameterfelds ein Fragezeichen hinzu. TC zeigt dann unmittelbar vor dem Ausführen die ersetzten Parameter an und erlaubt so auch eine Änderung der Parameter und Schalter.
Grüße
Dalai
Grüße
Dalai
#101164 Personal licence
Ryzen 5 2600, 16 GiB RAM, ASUS Prime X370-A, Win7 x64
Plugins: Services2, Startups, CertificateInfo, SignatureInfo, LineBreakInfo - Download-Mirror
Ryzen 5 2600, 16 GiB RAM, ASUS Prime X370-A, Win7 x64
Plugins: Services2, Startups, CertificateInfo, SignatureInfo, LineBreakInfo - Download-Mirror