Unterordner in einem Ordner mit einem Klick öffnen ?

German support forum

Moderators: Hacker, Stefan2, white

User avatar
Dalai
Power Member
Power Member
Posts: 9990
Joined: 2005-01-28, 22:17 UTC
Location: Meiningen (Südthüringen)

Post by *Dalai »

Mmh, ein kleines Problem im Skript mit Pfaden, die Leerzeichen enthalten könnte dafür die Ursache gewesen sein - sowohl für die ungewollten Umsortierung als auch die Fehlermeldung.

Ändere das Skript so ab:

Code: Select all

@echo off

if "%~1"=="" goto :EOF

pushd "%~1"

REM Liste aller Verzeichnisse erstellen und abarbeiten
for /F "delims=" %%i IN ('dir /ad /b /ogn') DO (
    echo.
    echo %%i
    REM Ins Verzeichnis wechseln
    pushd "%%~i"
    REM Alle Dateien eine Ebene nach oben verschieben
    REM move "*.*" ..
    REM Aus dem Verzeichnis wechseln
    popd
    REM Verzeichnis löschen
    REM rmdir "%%~i"
)

popd

echo.
pause 
Ich hab's erstmal entschärft. Um die Aktionen wirklich auszulösen, musst du die REMs in den Zeilen mit move und rmdir entfernen, so wie oben im Skript.
Ich hab dann ein Extra-Verzeichnis angelegt und markiert.
In dem Verzeichnis hat sich nichts getan,
Vorsicht, denn %P ist das Quellverzeichnis, also das, in dem du grade stehst. Alle darin befindlichen Verzeichnisse werden bearbeitet.

MfG Dalai
#101164 Personal licence
Ryzen 5 2600, 16 GiB RAM, ASUS Prime X370-A, Win7 x64

Plugins: Services2, Startups, CertificateInfo, SignatureInfo, LineBreakInfo - Download-Mirror
tc-neuling
Junior Member
Junior Member
Posts: 30
Joined: 2011-03-07, 12:11 UTC

Post by *tc-neuling »

Hallo Dalai,
gestern habe ich noch den Button erstellt und mit dem ersten Script versucht. Siehe da, einen Ordner konnte ich so bearbeiten, das die Dateien aus dem Unterordner in den Ober-Ordner verschoben wurden und der Unterordner gelöscht wurde. Man war ich erleichtert.

Dann hab ich Dein entschärftes Script ausgeführt und jetzt geht weder das Eine noch das Andere. Ich hab mein TC nochmal deinstalliert, neu installiert und es geht nicht. Ich weiß jetzt nicht, wo das Problem liegt. Das erste Script geht allerdings auch nicht, wenn ich drauf drück, kommt nur eine schwarze Farbe für ein Bruchteil von einer Sekunde. Ich muß
jetzt irgendetwas falsch gemacht haben. Auch führte das Sript (ich meine immer das erste) nur einen Ordner aus, wenn der auf meinem Rootverzeichnis G liegt. Ein Verzeichnis konnte ich nicht auswählen oder wo stelle ich das ein ? Ich probiere nachher weiter aus, es ging doch
gestern auch.

Muß ich bestimmte Fenster offen haben, Verzeichnisbäume einstellen ?
Wo muß ich das Script auf der Festplatte deponieren ?

Wenn /Dir Euch was einfällt..........

Bis hoffentlich später
tc-neuling
User avatar
Dalai
Power Member
Power Member
Posts: 9990
Joined: 2005-01-28, 22:17 UTC
Location: Meiningen (Südthüringen)

Post by *Dalai »

tc-neuling wrote:Dann hab ich Dein entschärftes Script ausgeführt und jetzt geht weder das Eine noch das Andere.
Logisch. Das Skript macht letztlich nur Ausgaben und die sollst du erstmal kontrollieren, bevor du es auf deine Daten loslässt, damit eine ungewollte Verschiebeaktion nicht nocheinmal passiert. Wie du das Skript wieder scharfschaltest, schrieb ich ja schon.
wenn ich drauf drück, kommt nur eine schwarze Farbe für ein Bruchteil von einer Sekunde.
Dann fehlt dem Skript sehr wahrscheinlich der nötige Parameter. Der ist unerlässlich, damit das Skript weiß, auf welchem Verzeichnis es agieren soll. Hat der Button den Parameter "%P"?
Muß ich bestimmte Fenster offen haben, Verzeichnisbäume einstellen ?
Nein.
Wo muß ich das Script auf der Festplatte deponieren ?
Völlig egal, solange es für den TC erreichbar und ausführbar ist.

MfG Dalai
#101164 Personal licence
Ryzen 5 2600, 16 GiB RAM, ASUS Prime X370-A, Win7 x64

Plugins: Services2, Startups, CertificateInfo, SignatureInfo, LineBreakInfo - Download-Mirror
tc-neuling
Junior Member
Junior Member
Posts: 30
Joined: 2011-03-07, 12:11 UTC

Post by *tc-neuling »

Dalai, jetzt hab ich erstmal das entschärfte Script nochmal erstellt. Es öffent sich das Fenster.

Du hast geschrieben, ich muß die REMs in den Zeilen entfernen.
Im schwarzen Fenster kann ich nichts entfernen. Ich verstehe nicht, wie ich das Script wieder scharf schalte.

Der nötige Parameter ist auf dem ersten und auch auf dem entschärften Script eingegeben. Hab ich eben kontrolliert.
User avatar
Dalai
Power Member
Power Member
Posts: 9990
Joined: 2005-01-28, 22:17 UTC
Location: Meiningen (Südthüringen)

Post by *Dalai »

tc-neuling wrote:Dalai, jetzt hab ich erstmal das entschärfte Script nochmal erstellt. Es öffent sich das Fenster.
Und was wird ausgegeben?
Du hast geschrieben, ich muß die REMs in den Zeilen entfernen.
Richtig. Aber eins nach dem anderen.
Im schwarzen Fenster kann ich nichts entfernen.
Richtig. Und das ist auch gut so. Denn dieses schwarze Fenster ist eine Konsole, auch CMD genannt und stellt (in diesem Fall) lediglich Ausgaben dar. Das eigentliche Skript hast du bereits kopiert und als *.cmd abgespeichert und dort müsstest du die REMs entfernen.

Aber wie gesagt: eins nach dem anderen. Erst kontrollieren, was das Skript ausgibt, bevor du es auf deine Daten loslässt. Ich kann das nicht oft genug sagen, weil ich noch nicht sicher bin, ob es das tut, was es soll bzw. was du willst.
Der nötige Parameter ist auf dem ersten und auch auf dem entschärften Script eingegeben. Hab ich eben kontrolliert.
Wenn die Konsole offen stehenbleibt und nach einer beliebigen Taste verlangt, ist der Parameter unter Umständen richtig. Kontrolliere das, indem du schaust, was das Skript ausgibt und diese Verzeichnisse die richtigen sind, die bearbeitet werden sollen.

MfG Dalai
#101164 Personal licence
Ryzen 5 2600, 16 GiB RAM, ASUS Prime X370-A, Win7 x64

Plugins: Services2, Startups, CertificateInfo, SignatureInfo, LineBreakInfo - Download-Mirror
tc-neuling
Junior Member
Junior Member
Posts: 30
Joined: 2011-03-07, 12:11 UTC

Post by *tc-neuling »

Sorry, ich krieg hier ne Krise. Die cmd.Datei ist gelöscht, ausversehen.
Jetzt wollte ich diese nochmal erstellen und jetzt geht gar nichts mehr.
tc-neuling
Junior Member
Junior Member
Posts: 30
Joined: 2011-03-07, 12:11 UTC

Post by *tc-neuling »

Es ist mir nicht mehr möglich, diese cmd.Datei zu erstellen.

Unter Typ erscheint 1KB Befehlsskript von Windows NT.
Bei der ersten Datei war aber die KB angegeben.
User avatar
Dalai
Power Member
Power Member
Posts: 9990
Joined: 2005-01-28, 22:17 UTC
Location: Meiningen (Südthüringen)

Post by *Dalai »

Was konkret geht nicht? Kannst du die Datei mit F4 über den TC bearbeiten? Hat das Skript den richtigen Inhalt?

MfG Dalai
#101164 Personal licence
Ryzen 5 2600, 16 GiB RAM, ASUS Prime X370-A, Win7 x64

Plugins: Services2, Startups, CertificateInfo, SignatureInfo, LineBreakInfo - Download-Mirror
tc-neuling
Junior Member
Junior Member
Posts: 30
Joined: 2011-03-07, 12:11 UTC

Post by *tc-neuling »

Folgendes geht nicht.
Wenn ich mit dem Inhalt des Scripts Mon Mar 07, 2011 12:56 pm die Textdatei erstelle, taucht sie im Explorer als 1KB Befehlsskript von Windows NT auf. Ich weiß, das diese Datei vorher eine KB-Größe von ca. 440 hatte.

Im TC wird sie als cmd.Datei angezeigt. Ich ziehe sie in die Button-Leiste,
gehe auf ändern und trage den Parameter ein. Wenn ich dann auf den Testordner klicke, dann taucht im schwarzen Fenster nur der Name des vorher schon angeklickten Ordners auf. Im TC kann ich sie unter F4 bearbeiten.

Da es gestern ging, bin ich echt verzweifelt.
User avatar
Dalai
Power Member
Power Member
Posts: 9990
Joined: 2005-01-28, 22:17 UTC
Location: Meiningen (Südthüringen)

Post by *Dalai »

tc-neuling wrote:Folgendes geht nicht.
Wenn ich mit dem Inhalt des Scripts Mon Mar 07, 2011 12:56 pm die Textdatei erstelle, taucht sie im Explorer als 1KB Befehlsskript von Windows NT auf.
Als was denn sonst? In der Detailansicht des Explorer wird die Größe immer aufgerundet, jedenfalls bei solchen kleinen Dateien. Die genaue Größe lässt sich über die Eigenschaften der Datei ermitteln.
Wenn ich dann auf den Testordner klicke, dann taucht im schwarzen Fenster nur der Name des vorher schon angeklickten Ordners auf.

Wie sieht die Struktur des fraglichen Verzeichnisses aus? Sind Verzeichnisse darin? Wenn nicht, gibt das Skript logischerweise nichts weiter aus.

Das Skript selbst startet und du machst dir über Dinge Gedanken, die völlig egal sind, denn ob das Skript nun 440 Bytes oder 440 MBytes (übertrieben ;)) hat, ist doch nebensächlich - wichtig ist, dass wir endlich klären, ob du die Ausgaben des Skriptes erwartest oder etwas anderes erwartest. Nur so kommen wir weiter.

Daher: mach mal einen Screenshot, in dem man folgendes sieht: Verzeichnisinhalt, Verzeichnisstruktur (Verzeichnisbaum des TC), Ausgabe des Skripts. Du kannst selbstverständlich Dateinamen unkenntlich machen, wenn nötig. Wichtig ist nur, dass man die relevanten Informationen noch sieht.

Den Screenshot kannst du z.B. zu www.abload.de hochladen und hier im Forum verlinken. Bitte nach Möglichkeit kein Imageshack nutzen, da deren Server grottenlahm sind.

MfG Dalai
#101164 Personal licence
Ryzen 5 2600, 16 GiB RAM, ASUS Prime X370-A, Win7 x64

Plugins: Services2, Startups, CertificateInfo, SignatureInfo, LineBreakInfo - Download-Mirror
tc-neuling
Junior Member
Junior Member
Posts: 30
Joined: 2011-03-07, 12:11 UTC

Post by *tc-neuling »

tc-neuling
Junior Member
Junior Member
Posts: 30
Joined: 2011-03-07, 12:11 UTC

Post by *tc-neuling »

ok, Link hat geklappt. Das wollt ich eben testen.

Hoffentlich sind das die Info´s, die Du brauchst.
Hier nochmal übersichtlicher


[img]http://www.abload.de/img/tcscreenshotzweicmxg.png[/img]

Ich muß hier jetzt aufhören. Morgen um 5.00 Uhr klingelt
der Wecker.

Danke bis hier hin erstmal.

(Du hast recht, mein Mann sagt auch immer, ich denke zu viel.
So, nun hab ich mich geoutet. Ich bin weiblich. Ja,ja------------)
User avatar
Dalai
Power Member
Power Member
Posts: 9990
Joined: 2005-01-28, 22:17 UTC
Location: Meiningen (Südthüringen)

Post by *Dalai »

Dein Fehler ist, den Button im falschen Moment zu aktivieren. Wie du sicher selbst siehst, listet das Skript alle Verzeichnisse vom Root des Laufwerks auf. Das ist sicher nicht so gedacht.

Lösung: Setze den Cursor im Verzeichnisbaum (linkes Panel, in deinem Fall also der mittlere Bereich deines TC-Fensters) oder im normalen Panel auf das Verzeichnis, das bearbeitet werden soll und drücke erst dann den Button.

Erklärung: Im Fall des Parameters "%P" ist die Position des Cursors im TC entscheidend, denn genau damit wird gearbeitet, ebenso beim Kopieren und Verschieben (solange nichts markiert wurde).

MfG Dalai

PS: Weiblich oder nicht, es gibt in allen Geschlechtern Individuen, die sich dümmer anstellen als nötig ;). Wobei ich damit nicht gesagt habe, dass du dich dumm anstellst, schließlich haben wie alle mal klein angefangen.
#101164 Personal licence
Ryzen 5 2600, 16 GiB RAM, ASUS Prime X370-A, Win7 x64

Plugins: Services2, Startups, CertificateInfo, SignatureInfo, LineBreakInfo - Download-Mirror
tc-neuling
Junior Member
Junior Member
Posts: 30
Joined: 2011-03-07, 12:11 UTC

Post by *tc-neuling »

Hallo Dalai,
danke für Deine Zeilen. Bis gestern hab ich echt gedacht, ich gehöre zu denen, die sich nicht ganz so dumm anstellen. So langsam krieg ich eine Ahnung, ich gehöre wohl zur anderen Fraktion.

Es geht wirklich nicht.

Jetzt taucht nichts mehr auf, außer der Ordner-Name im Script.

Ich habe nochmal zur deutlichen Übersicht zwei Screen´s gemacht.
Screen 3: Der Curser ist sowohl in dem linken wie auch in dem rechten Panel richtig gesetzt. In recht Panel hab ich die einzelnen Datei sichtbar gemacht. Das war wohl richtig oder ?
Screen 4: die Einstellung incl. Parameter.

Außerdem hab ich das Programm nochmal deinstalliert, neu installiert.
Hatte auch keine Veränderung gebracht.

Ich hab mir auch die beiden Skripts, die Du erstellt und hier zur Verfügung gestellt hast, ausgedruckt und verglichen. Sie sind übrigens beide gleich.

[img]http://www.abload.de/img/screendreiobwj.png[/img]

[img]http://www.abload.de/img/screen4oap6.png[/img]

Könntest Du das erste Script (das nicht entschärft war) nochmal zur Verfügung stellen ? Damit hat es ja (zumindest für einen Ordner) funktioniert. Vielleicht können wir da weiter machen. Jetzt weiß ich, wo genau der Curser sein muß. :wink:
Vielleicht hast Du noch eine Idee...........

Danke und Gruß
tc-neuling
User avatar
Dalai
Power Member
Power Member
Posts: 9990
Joined: 2005-01-28, 22:17 UTC
Location: Meiningen (Südthüringen)

Post by *Dalai »

tc-neuling wrote:Es geht wirklich nicht.
Dein Screenshot #3 sagt was anderes. Das entschärfte Skript manipuliert keine Daten, richtig - aber das ist ja der Sinn der Sache.
Jetzt taucht nichts mehr auf, außer der Ordner-Name im Script.
Was soll sonst noch passieren, im Fall des entschärften Skripts? Ich sagte ja: erst, wenn du sicher bist, dass die richtigen Ausgaben erfolgen, wird das Skript scharfgeschaltet und auf Testdaten losgelassen und erst danach auf die echten Daten.
Außerdem hab ich das Programm nochmal deinstalliert, neu installiert.
Hatte auch keine Veränderung gebracht.
Kann ja auch nicht, denn der TC hat damit nichts zu tun, der führt nur das Skript aus.
Ich hab mir auch die beiden Skripts, die Du erstellt und hier zur Verfügung gestellt hast, ausgedruckt und verglichen. Sie sind übrigens beide gleich.
Sind sie nicht, jedenfalls bis auf wenige Zeichen. Die Vergleichsfunktion des TC hätte dir das übrigens auch gezeigt, wo das ist ;).
Könntest Du das erste Script (das nicht entschärft war) nochmal zur Verfügung stellen ?
Nein, denn es ist dort ein Fehler enthalten, der bei Pfaden mit Leerzeichen zuschlägt. Ich vermute stark, dass genau das zur Unordnung/Umsortierung deiner Dateien geführt hat. Davon abgesehen steht das Skript immernoch am Anfang des Threads. Aber bitte verwende es nicht!

Also, nochmal die Frage: erwartest du die Ausgabe von Tiny Corner in Screenshot #3? Falls ja, dann kannst du das Skript entschärfen, indem du in den Zeilen 14 und 18 die REM am Anfang entfernst, so dass sie mit move bzw. rmdir beginnen.

MfG Dalai
#101164 Personal licence
Ryzen 5 2600, 16 GiB RAM, ASUS Prime X370-A, Win7 x64

Plugins: Services2, Startups, CertificateInfo, SignatureInfo, LineBreakInfo - Download-Mirror
Post Reply