Hallo zusammen,
ich habe folgende Aufgabe:
ich habe im Lister einen Ordner markiert. Ich würde gern einen Button haben, der, sobald ich ihn drücke:
- die größte Datei in dem markierten Ordner findet
- ihr den Namen des Ordners gibt (Extension bleibt unverändert)
- sie dann auf die selbe Ebene verschiebt auf der der Ordner ist
- und dann den markierten Ordner mit allen anderen Dateien darin (sofern es welche gibt) löscht
Ganz toll wäre es, wenn ich gleichzeitig mehrere Ordner selektieren könnte und der Button das in einem Rutsch für alle Ordner macht.
Danke für eure Hilfe!
Schalter für Dateiverschiebung und Umbenennung
-
- Beiträge: 13
- Registriert: 6. Apr 2011 14:44
Re: Schalter für Dateiverschiebung und Umbenennung
Klingt fast so als könnte man das mit den Standard-Kommandos hinbekommen (ohne Scripting), zumindest den einfachem Fall von innerhalb des Folders.
Ich selbst würde das aber mittels Script machen, ist irgendwie sicherer und zumindest für mich nachvollziehbarer.
Mit Standard-Kommandos wäre ein Button ungefähr so (dazu IN einem der Folder aufhalten).
Select SIZE=largest
Rename FROM={sourcepath$}\{file$} to TO={sourcepath$}\{sourcepath$|nopath|noterm}{file$|ext}
Copy MOVE FILE={sourcepath$}\{sourcepath$|nopath|noterm}{file$|ext} TO={sourcepath$}
Delete FILE={sourcepath$} QUIET
Von außerhalb des Folders, also mit selektierten Foldern wird es dann etwas komplizierter, ich weiß nicht ob man das ohne Scripting hinbekommt.
Zu den einzelnen Befehlen einfach mal die Doku aufmachen und herumprobierenm vll auch mal rüberschmulen in die Scripting-Beispiel Ecke hier und dort.
Die Befehle oben habe ich schnell zusammengewürfelt, keine Gewähr.
Ich selbst würde das aber mittels Script machen, ist irgendwie sicherer und zumindest für mich nachvollziehbarer.
Mit Standard-Kommandos wäre ein Button ungefähr so (dazu IN einem der Folder aufhalten).
Select SIZE=largest
Rename FROM={sourcepath$}\{file$} to TO={sourcepath$}\{sourcepath$|nopath|noterm}{file$|ext}
Copy MOVE FILE={sourcepath$}\{sourcepath$|nopath|noterm}{file$|ext} TO={sourcepath$}
Delete FILE={sourcepath$} QUIET
Von außerhalb des Folders, also mit selektierten Foldern wird es dann etwas komplizierter, ich weiß nicht ob man das ohne Scripting hinbekommt.
Zu den einzelnen Befehlen einfach mal die Doku aufmachen und herumprobierenm vll auch mal rüberschmulen in die Scripting-Beispiel Ecke hier und dort.
Die Befehle oben habe ich schnell zusammengewürfelt, keine Gewähr.
-
- Beiträge: 13
- Registriert: 6. Apr 2011 14:44
Re: Schalter für Dateiverschiebung und Umbenennung
Hallo,
danke für die schnelle Antwort.
Ich befinde mich dabei außerhalb des Ordners... möchte ja im Zweifelsfall auch gern mehrere Verzeichnisse auf einen Schlag "bereinigen".
Leider reichen meine scripting Kenntnisse nicht aus sowas selber hin zu bekommen. Gibt's da ne richtige Schulung?
danke für die schnelle Antwort.
Ich befinde mich dabei außerhalb des Ordners... möchte ja im Zweifelsfall auch gern mehrere Verzeichnisse auf einen Schlag "bereinigen".
Leider reichen meine scripting Kenntnisse nicht aus sowas selber hin zu bekommen. Gibt's da ne richtige Schulung?
-
- Beiträge: 13
- Registriert: 6. Apr 2011 14:44
Re: Schalter für Dateiverschiebung und Umbenennung
Also der folgende Code hat es bei mir dann gemacht, wenn ich mich innerhalb des zu löschenden Ordners befinde:tbone hat geschrieben: ↑1. Dez 2020 15:24 Klingt fast so als könnte man das mit den Standard-Kommandos hinbekommen (ohne Scripting), zumindest den einfachem Fall von innerhalb des Folders.
Ich selbst würde das aber mittels Script machen, ist irgendwie sicherer und zumindest für mich nachvollziehbarer.
Mit Standard-Kommandos wäre ein Button ungefähr so (dazu IN einem der Folder aufhalten).
Select SIZE=largest
Rename FROM={sourcepath$}\{file$} to TO={sourcepath$}\{sourcepath$|nopath|noterm}{file$|ext}
Copy MOVE FILE={sourcepath$}\{sourcepath$|nopath|noterm}{file$|ext} TO={sourcepath$}
Delete FILE={sourcepath$} QUIET
Von außerhalb des Folders, also mit selektierten Foldern wird es dann etwas komplizierter, ich weiß nicht ob man das ohne Scripting hinbekommt.
Zu den einzelnen Befehlen einfach mal die Doku aufmachen und herumprobierenm vll auch mal rüberschmulen in die Scripting-Beispiel Ecke hier und dort.
Die Befehle oben habe ich schnell zusammengewürfelt, keine Gewähr.
Code: Alles auswählen
Select SIZE=largest
Rename TO={sourcepath$}\{sourcepath$|nopath|noterm}{file$|ext}
Copy MOVE TO ..
Delete FILE={sourcepath$} QUIET
Nichts desto trotz schonmal echt cool dass du das aus dem Stehgreif so hinbekommen hast dass ich es nur noch abändern musste.
Re: Schalter für Dateiverschiebung und Umbenennung
Nun Stehgreif ist auch übertrieben, ich habe auch die Doku dazu aufgeschlagen, aber ich weiß so ungefähr wo was steht und stückele das dann zusammen. Das Problem mit den Standardkommandos ist immer, dass man (ich) nie so genau weiß, wie die so gegenseitig miteinander auskommen, ob eine aktualisierte Selektion zieht und wie sich das verhält wenn mehrere Items selektiert sind usw. usf.. Daher auf lange Sicht, führt m.M. nichts an Scripting und etwas Bildung in dieser Richtung vorbei. Wer mit JScript anfängt (dazu brauchts nichtmal DO), versteht dann auch Javascript und Java für so manch anderen Projekte. Dein Computer hat eine "cscript.exe" damit kannst Du sofort JScripte ausführen und Files einlesen/Folder umbenennen etc.. ganz ohne DO. So ein Script kann man dann auch einfach in DO einbinden, liefe dann aber auch ohne, eigentlich der optimalste Fall.
Aber gut, nehmen wir das erstmal so, ein kleiner Fortschritt ist gemacht! o)
Aber gut, nehmen wir das erstmal so, ein kleiner Fortschritt ist gemacht! o)
- Kundal
- Moderator
- Beiträge: 1304
- Registriert: 20. Apr 2010 21:26
- Betriebssystem: Win7 & Win 10 Pro 64 bit
- DOpus Version: 12.xx + Betas
- Edition: Pro
Re: Schalter für Dateiverschiebung und Umbenennung
Der hier funktioniert, wenn auch nur mit einem einzelnen ausgewählten Ordner. Schön ist die Lösung allerdings nicht, weil in den Ordner hinein und wieder heraus navigiert werden muss. Schön geht wohl nur mit Script.
Code: Alles auswählen
Go
Select SIZE=largest
Rename TO=..\{sourcepath$|nopath|noterm}{file$|ext}
Delete {sourcepath} QUIET
Go UP
-
- Beiträge: 13
- Registriert: 6. Apr 2011 14:44
Re: Schalter für Dateiverschiebung und Umbenennung
Hi,
nach ein wenig Recherche bin ich auf den selben Code gekommen, habe noch eine kleine "Sicherheit" eingebaut damit ich nicht aus versehen was lösche was nicht gelöscht werden soll.
...schade dass man nicht rekursiv durch alles gehen kann.
nach ein wenig Recherche bin ich auf den selben Code gekommen, habe noch eine kleine "Sicherheit" eingebaut damit ich nicht aus versehen was lösche was nicht gelöscht werden soll.
Code: Alles auswählen
@disablenosel:dirs
Go
Select SIZE=largest
Rename TO=..\{sourcepath$|nopath|noterm}{file$|ext}
Delete FILE={sourcepath$} QUIET
Go UP