Sind ''Automatisierung'' und ''Macros'' im TC möglich?
Moderators: white, Hacker, Stefan2
Sind ''Automatisierung'' und ''Macros'' im TC möglich?
Hallo,
nutze aktuell noch den Speed Commander, denke aber über einen Wechsel nach, daher die vielleicht etwas ungewohnte Frage:
Ich habe im Speed Commander diverse Dinge / Abläufe in Macros automatisiert. Zum Beispiel mit dem Klick auf ein Icon wird ein Verzeichnis umbenannt, bestimmte File Attribute + Rechte auf den Ordner und alle Unterordner gesetzt. Kann man so etwas auch im TC abbilden?
Ich teste gerade ob der TC den Speed Commander für meine Anforderungen ersetzen kann, daher die vielleicht etwas ungewöhnliche Frage?
Danke, Pauli
nutze aktuell noch den Speed Commander, denke aber über einen Wechsel nach, daher die vielleicht etwas ungewohnte Frage:
Ich habe im Speed Commander diverse Dinge / Abläufe in Macros automatisiert. Zum Beispiel mit dem Klick auf ein Icon wird ein Verzeichnis umbenannt, bestimmte File Attribute + Rechte auf den Ordner und alle Unterordner gesetzt. Kann man so etwas auch im TC abbilden?
Ich teste gerade ob der TC den Speed Commander für meine Anforderungen ersetzen kann, daher die vielleicht etwas ungewöhnliche Frage?
Danke, Pauli
Der TC hat im Vergleich zum Speed Commander kein eigenes Makro API
aber mit Autohotkey und den vorhandenen Möglichkeiten ist viel machbar.
Beispiele gibts im Wiki
http://www.ghisler.ch/wikide/index.php?title=Automatisierung
aber mit Autohotkey und den vorhandenen Möglichkeiten ist viel machbar.
Beispiele gibts im Wiki
http://www.ghisler.ch/wikide/index.php?title=Automatisierung
Windows 11 Home x64 Version 23H2 (OS Build 22631.3593)
TC 11.03 x64 / x86
Everything 1.5.0.1376a (x64), Everything Toolbar 1.3.3, Listary Pro 6.3.0.78
QAP 11.6.3.3 x64
TC 11.03 x64 / x86
Everything 1.5.0.1376a (x64), Everything Toolbar 1.3.3, Listary Pro 6.3.0.78
QAP 11.6.3.3 x64
OK, vielen Dank. Werde ich mir mal anschauen ob ich damit klar komme und meine Workflows im TC abbilden kann ...
Wenn das klappt wechsle ich zum TC!
Gibt es noch weitere wesentliche Einschränkungen (außer die fehlende Macro API) beim Vergleich von TC und SC? Die Community scheint auf jeden Fall schon mal zu funktionieren ...
Gruß, Pauli
Wenn das klappt wechsle ich zum TC!
Gibt es noch weitere wesentliche Einschränkungen (außer die fehlende Macro API) beim Vergleich von TC und SC? Die Community scheint auf jeden Fall schon mal zu funktionieren ...
Gruß, Pauli
Ich bin voreingenommen und hatte auch mal eine Lizens des SCPauli wrote:OK, vielen Dank. Werde ich mir mal anschauen ob ich damit klar komme und meine Workflows im TC abbilden kann ...
Wenn das klappt wechsle ich zum TC!
Gibt es noch weitere wesentliche Einschränkungen (außer die fehlende Macro API) beim Vergleich von TC und SC? Die Community scheint auf jeden Fall schon mal zu funktionieren ...
Gruß, Pauli
habe die aber nicht weiter updated.
Die Updates des TC kosten im Gegensatz zum SC nichts.
Der einzige technische Vorteil des SC ist für mich die Makro Schnittstelle,
alles andere ist im TC besser.
Vor allem die grosse Menge an Plugins die kein anderer File Manager aufweisen kann.
Über die Oberfläche streiten sich zwar viele,
die ist mir persönlich aber in einem File Manager egal.
Das beste ist sich selbst ein Bild zu machen und nach den eigenen Kriterien zu entscheiden.
Bei Fragen hat das Forum viele hilfreiche Benutzer die zum Teil auch Plugins beigesteuert haben.
Windows 11 Home x64 Version 23H2 (OS Build 22631.3593)
TC 11.03 x64 / x86
Everything 1.5.0.1376a (x64), Everything Toolbar 1.3.3, Listary Pro 6.3.0.78
QAP 11.6.3.3 x64
TC 11.03 x64 / x86
Everything 1.5.0.1376a (x64), Everything Toolbar 1.3.3, Listary Pro 6.3.0.78
QAP 11.6.3.3 x64
Hallo,
ich versuche aktuell meine SC Macros durch Batchdateien abzubilden.
Mittlerweile habe ich herausgefunden, dass ich einen Stern vor den Befehl setzen muss damit die Dateioperationen zum Beispiel auch unter Windows 10 im Programm-Ordner laufen. Das ganze sieht zum Beispiel so aus:
Ist das soweit TC konform? Sollen die Werte in Anführungszeichen oder macht das der TC an den entsprechenden Stellen automatisch (ist mir irgendwie nicht ganz klar und wird auch hier im Forum unterschiedlich gehandhabt)?
Das aufpoppen des Konsolen-Fensters ist natürlich sehr unschön! Wie kann ich dies denn unterdrücken?
Danke + Gruß, Pauli
ich versuche aktuell meine SC Macros durch Batchdateien abzubilden.
Mittlerweile habe ich herausgefunden, dass ich einen Stern vor den Befehl setzen muss damit die Dateioperationen zum Beispiel auch unter Windows 10 im Programm-Ordner laufen. Das ganze sieht zum Beispiel so aus:
Code: Select all
Kommando: *%SystemRoot%\system32\cmd.exe /c %COMMANDER_PATH%\SCRIPTS\MakeDirOriginaldateien.bat
Parameter: %P%N%E
Startpfad: %COMMANDER_PATH%\SCRIPTS\
Das aufpoppen des Konsolen-Fensters ist natürlich sehr unschön! Wie kann ich dies denn unterdrücken?
Danke + Gruß, Pauli
TC setzt Anführungszeichen ausschließlich bei Verwendung von %P%N - in dieser Kombination und Reihenfolge; alle anderen Fälle sind vom Nutzer entsprechend zu bearbeiten. %P%N beinhaltet übrigens schon den kompletten Dateinamen, also auch %E.
Grüße
Dalai
Da du ja offenbar einen Button anlegst, hakst du einfach "Als Symbol" an, so dass das Kommando minimiert ausgeführt wird.Pauli wrote:Das aufpoppen des Konsolen-Fensters ist natürlich sehr unschön! Wie kann ich dies denn unterdrücken?
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
Hi Dalai,
vielen Dank. Den Haken Symbol habe ich ganz übersehen.
Beim Kommando sollte ich auch Anführungszeichen setzen, wenn Leerzeichen im Pfad etc. vorkommen oder nur beim Parameter?
Kann ich nach dem abarbeiten ein Refresh auslösen (F2), denn es dauert ein Moment bis ich die Änderung auch sehe?
Gruß, Pauli
vielen Dank. Den Haken Symbol habe ich ganz übersehen.
Beim Kommando sollte ich auch Anführungszeichen setzen, wenn Leerzeichen im Pfad etc. vorkommen oder nur beim Parameter?
Kann ich nach dem abarbeiten ein Refresh auslösen (F2), denn es dauert ein Moment bis ich die Änderung auch sehe?
Gruß, Pauli
Beim Kommando selbst macht es keinen Unterschied, solange keine Parameter dort mit enthalten sind (das geht nämlich auch). Ich selbst habe beides in Benutzung, teilweise Buttons mit Quotes, teilweise ohne - beide führen Kommandos aus, die in Pfaden mit Leerzeichen liegen.Pauli wrote:Beim Kommando sollte ich auch Anführungszeichen setzen, wenn Leerzeichen im Pfad etc. vorkommen oder nur beim Parameter?
Vielleicht doch nicht minimiert ausführen lassen, so dass der Fokus vom TC geht und dann wiederkommt, und somit automatisch einen Refresh auslöst? Nein, im Ernst, sicher kann man das machen. Allerdings müsstest du dafür deinen Button in ein benutzerdefiniertes Kommando (em_*) umwandeln, denn nur cm_ und em_ Kommandos lassen sich hintereinanderschalten, nicht aber normale Befehle.Kann ich nach dem abarbeiten ein Refresh auslösen (F2), denn es dauert ein Moment bis ich die Änderung auch sehe?
Beispiel für eine solche Verkettung:
Code: Select all
cmSrcLong,cm_SrcByDateTime,cm_RereadSource
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
Kann ich dann ein benutzerdefiniertes Kommando mit folgender
Kommando-Ziele erstellen:
*%SystemRoot%\system32\cmd.exe /c %COMMANDER_PATH%\SCRIPTS\MakeDirOriginaldateien.bat, cm_RereadSource
oder muss ich den eigentlichen Aufruf als benutzerdefiniertes Kommando em_MakeDirOriginaldateien erstellen und dann ein weiteres was wiederum auf dieses verwaist:
em_MakeDirOriginaldateien, cm_RereadSource
Danke, Pauli
Kommando-Ziele erstellen:
*%SystemRoot%\system32\cmd.exe /c %COMMANDER_PATH%\SCRIPTS\MakeDirOriginaldateien.bat, cm_RereadSource
oder muss ich den eigentlichen Aufruf als benutzerdefiniertes Kommando em_MakeDirOriginaldateien erstellen und dann ein weiteres was wiederum auf dieses verwaist:
em_MakeDirOriginaldateien, cm_RereadSource
Danke, Pauli
Letzteres. Allerdings habe ich meine Zweifel, dass das mit der Ausführung als Administrator zusammen funktioniert...
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
Nun, es kommt immer darauf an, welche Operationen man auf Dateien/Verzeichnisse anwenden will. Im Zweifel bietet es sich auch an, eine zweite Instanz des TC als Administrator zu öffnen und dort die nötigen Dinge auszuführen. Das geht auch direkt aus dem laufenden TC unter Übergabe der aktiven Verzeichnisse:
Insgesamt wende ich aber nicht so häufig Skripte oder sonstige Operationen, die externe Kommandos brauchen, auf eine Auswahl von Dateien/Verzeichnissen an. Das meiste geht mit TC-Bordmitteln.
Was macht denn dein Batch-Skript? Nach dessen Namen zu urteilen, erstellt es aus den markierten Dateien Verzeichnisse mit demselben Namen. Wenn du die Dateien da hineinschieben willst, geht die Sache auch mit dem TC - mit dem MUT (Mehrfachumbenenntool), auf das man wohl eher nicht sofort kommt.
Grüße
Dalai
Code: Select all
Kommando: *%COMMANDER_EXE%
Parameter: %Z%X "%P" "%T" /N
Was macht denn dein Batch-Skript? Nach dessen Namen zu urteilen, erstellt es aus den markierten Dateien Verzeichnisse mit demselben Namen. Wenn du die Dateien da hineinschieben willst, geht die Sache auch mit dem TC - mit dem MUT (Mehrfachumbenenntool), auf das man wohl eher nicht sofort kommt.
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
Skript Script Automatisierung programmieren fernsteuern
TippPauli wrote:Kann ich dann ein benutzerdefiniertes Kommando mit folgender
Kommando-Ziele erstellen:
*%SystemRoot%\system32\cmd.exe /c %COMMANDER_PATH%\SCRIPTS\MakeDirOriginaldateien.bat, cm_RereadSource
oder muss ich den eigentlichen Aufruf als benutzerdefiniertes Kommando em_MakeDirOriginaldateien erstellen und dann ein weiteres was wiederum auf dieses verwaist:
em_MakeDirOriginaldateien, cm_RereadSource
Danke, Pauli
Man kann in einer Batch auch ein Tool wie NirCmd aufrufen, und damit Mitteilungen an den TC senden.
Code: Select all
<hier der code deiner MakeDirOriginaldateien.bat, und dann...>
TIMEOUT /T 3
REM TOTALCMD.INC: cm_RereadSource=540;Reread source
X:\TCMD\TOOLs\NirSoft\nircmdc.exe win sendmsg class TTOTAL_CMD 1075, 540, 0
Timeout ist ein WindowsTM Befehl.
TTOTAL_CMD = ist die Kennung des TCs
1075 = ist "der Kanal" auf dem der TC lauscht, um solche Befehle anzunehmen
540 = ist der an den TC gesendete Befehl
- - -
Anstelle der unflexiblen DOS Batch kann man auch mit dem Windows Script Host und somit mit VBScript und JScript, oder gleich mit der PowerShell arbeiten.
Die haben die besseren Unicode-Unterstützung und Stringmanipulationsmöglichkeiten.
- - -
Viele haben auch die AutoHotkey.exe im TC-Ordner liegen.
Damit kann man vieles noch eleganter erledigen und prima GUI-Dialoge bauen.
Auch das fern steuern vom TC über sendmsg ist damit möglich.
Code: Select all
;Test with AHK-L v1.1.22.09 on Win7/32 with TC9beta2 32-Bit
#SingleInstance, Force
#IfWinExist, ahk_class TTOTAL_CMD
$#a:: ;press shortcut Win-A
;TC v9: WM_USER+50 = 1074 ;See Hstory.txt "08.06.16 Release Total Commander 9.0 beta 1"
vMsg = 1074 ;WM_USER+50
;Left/Right
;1011/1012 to get index of first file in list (-1 if there are no files)
vWParam = 1011
SendMessage %vMsg%, %vWParam%, 0, , ahk_class TTOTAL_CMD
vFolders := % (ErrorLevel - 1)
MsgBox ErrorLevel of wParam %vWParam% (Left):`nFirst file is on Pos. %ErrorLevel%`n(So there are %vFolders% folders)
vWParam = 1012
SendMessage %vMsg%, %vWParam%, 0, , ahk_class TTOTAL_CMD
vFolders := % (ErrorLevel - 1)
MsgBox ErrorLevel of wParam %vWParam% (Right):`nFirst file is on Pos. %ErrorLevel%`n(So there are %vFolders% folders)
Return
- - -
Durchsuche mal das Forum nach Batch, VBS, VBScript, NirCmd, PowerPro, Powershell und AutoHotkey... da findest du viele Beispiele als Anregung.