| View previous topic :: View next topic |
| Author |
Message |
downunder888 Junior Member

Joined: 15 Apr 2012 Posts: 5
|
Posted: Sun Apr 15, 2012 9:14 am Post subject: Button zum Automatischen erstellen von Ordnern? |
|
|
Hallo an alle ich bin neu im Forum und habe natürlich gleich eine Frage.
Ich möchte einen Button in der Buttonbar erstellen, der einen Batch Befehl ausführt.
Bei APPS klappt das ja wunderbar.
Aber leider nicht bei dem Batch Befehl, den ich zum Automatischen erstellen von Ordnern nach einer Text Datei nutzen will.
Hier also die Daten:
Der Batch Befehl lautet:
| Code: | chcp 1252
for /f "delims=" %%i in (Test.TXT) do @md "%%i" |
Der Inhalt Text Datei (Test.TXT) ist:
| Code: | Dirä
Dirö
Dirü
Dir1
Dir2
Dir3
Dir4
Dir5 |
Wie Ihr sehen könnt, schalte ich den Zeichensatz auf 1252 um ob das unter TC nötig ist weiß ich leider nicht.
In der zweiten Zeile sollte das (Test.TXT) möglichst durch die angewählte Text Datei im Quell Fenster von TC ersetzt werden der Befehl ist glaube ich (?%P%N).
Ich habe versucht die Befehle in der Buttonbar bei Kommando und Parameter auf unterschiedliche weise einzugeben, aber es blitzt höchstens ein DOS-Fenster auf und nichts passiert.
XMD habe ich schon ausprobiert aber der Batch Befehl gefällt mir besser.
Bei der suche im Netz und im Forum habe ich leider nichts gefunden und nach drei Tagen gebe ich auf.
Ich hoffe Ihr könnt mir Helfen.
Noch einen schönen Sonntag.
downunder888
Last edited by downunder888 on Sun Apr 15, 2012 12:04 pm; edited 1 time in total |
|
| Back to top |
|
 |
Dalai Power Member


Joined: 28 Jan 2005 Posts: 2720 Location: Meiningen (Südthüringen)
|
Posted: Sun Apr 15, 2012 9:21 am Post subject: |
|
|
Schreib die Befehle in eine Batchdatei und rufe diese mit dem Button auf. Alles andere ist komplizierter, denn auch wenn es möglich ist, Batchbefehle auf einen Button zu legen, so lohnt sich das sehr oft nur bei einzelnen Befehlen und die Syntax wird auch nicht unbedingt einfacher.
MfG Dalai _________________ #101164 Personal licence
Athlon 64 X2 5400+ Black Edition, 4096 MB RAM, Gigabyte M56S-S3, WinXP SP3 & Kubuntu 8.04 x64
Wer die Freiheit aufgibt, um Sicherheit zu gewinnen, verdient weder Freiheit noch Sicherheit. |
|
| Back to top |
|
 |
downunder888 Junior Member

Joined: 15 Apr 2012 Posts: 5
|
Posted: Sun Apr 15, 2012 9:26 am Post subject: |
|
|
Hallo Dalai
Danke für Deine schnelle Antwort.
Aber so wie Du es vorschlägst, mache ich es schon und das wollte ich ändern. |
|
| Back to top |
|
 |
Dalai Power Member


Joined: 28 Jan 2005 Posts: 2720 Location: Meiningen (Südthüringen)
|
Posted: Sun Apr 15, 2012 9:37 am Post subject: |
|
|
Keine Ahnung, ob dir das was nützt, aber
- TC kann mehrere Verzeichnisse gleichzeitig anlegen. Das geht mit der Syntax
| Code: | | dir1|dir2|dir3|dir4 |
Dieses Tool ist ebenfalls für solche Fälle gedacht, kann aber noch wesentlich mehr.
Wenn das nicht auf deinen Fall anwendbar ist, dann versuch mal folgende Syntax: | Code: | | chcp 1252 & for /f "delims=" %i in (Test.TXT) do @md "%i" |
Ich weiß nicht, ob die Prozentzeichen einfach oder doppelt angegeben werden müssen, denn benutzt man sie auf der CMD, dürfen sie nur einfach sein; nutzt man sie in einer Batchdatei, müssen sie verdoppelt werden. Die TC-Syntax eines Buttons gibt aber an, dass %% nur ein Prozentzeichen ergibt. Am besten, du probierst es aus.
Davon abgesehen ist der Befehl aber noch verbesserungsfähig, denn "test.txt" könnte dynamisch sein.
Besser wäre es also vielleicht sogar so: | Code: | TOTALCMD#BAR#DATA
cmd.exe
/k chcp 1252 & for /f "delims=" %%i in (Test.TXT) do @md "%%i"
shell32.dll
0
-1
| Icon darfst du dir selber aussuchen, und auf eine dynamische Textdatei hab ich auch erstmal verzichtet .
Noch eine Ergänzung: Wenn der Button wie gewünscht funktioniert, kannst du den Parameter /k in /c ändern, der die Konsole automatisch nach Ausführung schließt.
MfG Dalai _________________ #101164 Personal licence
Athlon 64 X2 5400+ Black Edition, 4096 MB RAM, Gigabyte M56S-S3, WinXP SP3 & Kubuntu 8.04 x64
Wer die Freiheit aufgibt, um Sicherheit zu gewinnen, verdient weder Freiheit noch Sicherheit. |
|
| Back to top |
|
 |
downunder888 Junior Member

Joined: 15 Apr 2012 Posts: 5
|
Posted: Sun Apr 15, 2012 10:23 am Post subject: |
|
|
Klasse Dalai
das ist jetzt genau so wie mit meiner Batch Datei.
Aber Du hast es jetzt direkt in die Buttonbar geschrieben.
Kommando: und Parameter:
| Code: | cmd.exe
/k chcp 1252 & for /f "delims=" %%i in (%P%N) do @md "%%i"
|
Der einzige Nachteil der Pfad für die Text Datei darf keine Leerzeichen enthalten und eine Abfrage mit (?) ist auch nicht möglich.
Aber schon viel besser Danke |
|
| Back to top |
|
 |
Dalai Power Member


Joined: 28 Jan 2005 Posts: 2720 Location: Meiningen (Südthüringen)
|
Posted: Sun Apr 15, 2012 10:31 am Post subject: |
|
|
| downunder888 wrote: | | Aber Du hast es jetzt direkt in die Buttonbar geschrieben. |
Das wolltest du doch?! Ich habe dich so verstanden, dass du dir die Batchdatei sparen willst. Daraus folgt, dass alle Befehle in den Button (oder Startermenü) müssen.
| Quote: | | Der einzige Nachteil der Pfad für die Text Datei darf keine Leerzeichen enthalten |
Das lässt sich durch Umarbeiten lösen: | Code: | TOTALCMD#BAR#DATA
cmd.exe
?/k chcp 1252 & for /f "delims=" %%i in ('type %P%N') do @echo "%%i"
shell32.dll
-1
| Anführungszeichen setzt der TC automatisch, wenn erforderlich. Und dies | Quote: | | und eine Abfrage mit (?) ist auch nicht möglich. | ist auch gleich mit enthalten. Oder meinst du, dass im entsprechenden Dialog nur der Dateiname steht bzw. abgefragt wird? Dann kommst du nicht um eine Batchdatei herum.
[Ergänzung] Ohne Benutzung des Befehls type (kostet Laufzeit) geht es auch: | Code: | TOTALCMD#BAR#DATA
cmd.exe
?/k chcp 1252 & for /f "usebackq delims=" %%i in (%P%N) do @echo "%%i"
shell32.dll
-1
|
MfG Dalai _________________ #101164 Personal licence
Athlon 64 X2 5400+ Black Edition, 4096 MB RAM, Gigabyte M56S-S3, WinXP SP3 & Kubuntu 8.04 x64
Wer die Freiheit aufgibt, um Sicherheit zu gewinnen, verdient weder Freiheit noch Sicherheit. |
|
| Back to top |
|
 |
downunder888 Junior Member

Joined: 15 Apr 2012 Posts: 5
|
Posted: Sun Apr 15, 2012 11:59 am Post subject: |
|
|
Hallo Dalai das „aber“ war Positive gemeint genau so wollte ich das.
Die Abfrage mit dem (?) habe ich genau so gemeint.
Als zusätzliche Sicherheit im Eifer des Gefechts.
Leider habe ich ein Haar in der Suppe entdeckt.
Der Befehl für den Zeichensatz wird nicht übernommen.
Ist mir erst jetzt aufgefallen die Umlaute sind.
Sieh selbst:
| Code: | Dir▀\
Dir1\
Dir2\
Dir3\
Dir4\
Dir5\
Dir÷\
Dir³\
Dirõ\ |
Und sollten so aussehen:
| Code: | Dir1\
Dir2\
Dir3\
Dir4\
Dir5\
Dirä\
Dirö\
Dirß\
Dirü\ |
Ich hatte das mit einer anderen Text Datei getestet, da wahren die Umlaute in den Zeilen versteckt.
Oh je.
Hast Du da vielleicht auch eine Idee. |
|
| Back to top |
|
 |
Dalai Power Member


Joined: 28 Jan 2005 Posts: 2720 Location: Meiningen (Südthüringen)
|
Posted: Sun Apr 15, 2012 12:58 pm Post subject: |
|
|
Ich hab gerade etwas rumprobiert (mit Subshell, anderem Zeichensatz), aber es ist mir nicht gelungen, das Teil zum Funktionieren zu bringen. Verstehen tue ich das nicht. Dir bleiben 2 Möglichkeiten: bei der Batchdatei bleiben oder Textdatei in ASCII kodieren, wobei letzteres nicht gerade sinnvoll ist .
MfG Dalai _________________ #101164 Personal licence
Athlon 64 X2 5400+ Black Edition, 4096 MB RAM, Gigabyte M56S-S3, WinXP SP3 & Kubuntu 8.04 x64
Wer die Freiheit aufgibt, um Sicherheit zu gewinnen, verdient weder Freiheit noch Sicherheit. |
|
| Back to top |
|
 |
downunder888 Junior Member

Joined: 15 Apr 2012 Posts: 5
|
Posted: Mon Apr 16, 2012 8:01 am Post subject: |
|
|
Schade da werde ich wohl bei der Batch Datei bleiben müssen.
Noch mal vielen Dank für Deine Mühen.
downunder888 |
|
| Back to top |
|
 |
|