Batch - Dateien nach Endung in Ordner sotieren
Aber nun zum Problem.
Ich bin eigentlich eher der Linux User aber jetzt muss ich was mit Batch machen.
Und zwar geht es darum dass das Script den Endbenutzer nach dem Namen einer Datei fragen soll.
Das Script sucht dann in dem Ordner, in dem das Script liegt, nach der Datei und sagt einem dann die Dateiendung und in welchen Ordner die Datei gehört.
Also um das ganze zu veranschaulichen schreib ich die Konservation sozusagen auf (">" sind Eingaben).
Die Datei Hallo.txt befindet sich im Ordner des Scripts.
Geben sie bitte den Dateinamen an:
Also eigentlich nicht viel. Das ist auch nur der Teil meiner Aufgabe bei der ich wirklich Hilfe brauche. Also keine Sorge dass ihr mir die ganze Arbeit "abnehmt".
Ich bedanke mich schon mal im Vorraus
Ich bin eigentlich eher der Linux User aber jetzt muss ich was mit Batch machen.
Und zwar geht es darum dass das Script den Endbenutzer nach dem Namen einer Datei fragen soll.
Das Script sucht dann in dem Ordner, in dem das Script liegt, nach der Datei und sagt einem dann die Dateiendung und in welchen Ordner die Datei gehört.
Also um das ganze zu veranschaulichen schreib ich die Konservation sozusagen auf (">" sind Eingaben).
Die Datei Hallo.txt befindet sich im Ordner des Scripts.
Geben sie bitte den Dateinamen an:
Hallo
Die Datei Hallo.txt ist eine Textdatei und gehört in den Ordner "Berichte"Also eigentlich nicht viel. Das ist auch nur der Teil meiner Aufgabe bei der ich wirklich Hilfe brauche. Also keine Sorge dass ihr mir die ganze Arbeit "abnehmt".
Ich bedanke mich schon mal im Vorraus
Please also mark the comments that contributed to the solution of the article
Content-Key: 135185
Url: https://administrator.de/contentid/135185
Printed on: April 19, 2024 at 22:04 o'clock
4 Comments
Latest comment
Moin Tiborf,
willkommen im Forum.
Tipp für die kommenden Beiträge: "Aber nun zum Problem." ist hier eine eher selten unkommentiert bleibende Begrüßungsformel, während Floskeln wie "Hallo", "Tach" oder "Selam" meist kein Feuer auf sich ziehen.
Und der Gruß "Ich bedanke mich schon mal im Vorraus" (egal mit wieviel "r" im Wort "voraus" signalisiert auch, dass möglichweise kein Feedback zu erwarten ist.
Aber nun zu deiner Frage.
Unklar ist mir
Da passiert ein kleines Wunder?
Klar dagegen sind mir an nötigen Hilfs-Werkzeugen, zu denen du dir die Hilfe am CMD-Prompt anschauen solltest:
Hast du denn schon angefangen mit dem Schnipsel?
Grüße
Biber
willkommen im Forum.
Tipp für die kommenden Beiträge: "Aber nun zum Problem." ist hier eine eher selten unkommentiert bleibende Begrüßungsformel, während Floskeln wie "Hallo", "Tach" oder "Selam" meist kein Feuer auf sich ziehen.
Und der Gruß "Ich bedanke mich schon mal im Vorraus" (egal mit wieviel "r" im Wort "voraus" signalisiert auch, dass möglichweise kein Feedback zu erwarten ist.
Aber nun zu deiner Frage.
Unklar ist mir
Das Script sucht dann in dem Ordner, in dem das Script liegt, nach der Datei und sagt einem dann die Dateiendung und in welchen Ordner die Datei gehört.
Hmmm, "...sagt einem dann die Dateiendung und in welchen Ordner die Datei gehört" ist für mich jetzt nicht wirklich ein implementierbares Verarbeitungsverfahren.Da passiert ein kleines Wunder?
Klar dagegen sind mir an nötigen Hilfs-Werkzeugen, zu denen du dir die Hilfe am CMD-Prompt anschauen solltest:
- der Befehl SET /P, mit dem du den Benutzer nach dem nächsten Namen fragen kannst
- die FOR-Anweisung und dabei speziell die "abgeleiteten Laufvariablen" wie %~xi [DateieXtension] und %~ni [DateiName], die du wahrscheinlich brauchen wirst.
Hast du denn schon angefangen mit dem Schnipsel?
Grüße
Biber
Hallo Tiborf,
ich erahne, wie du das ganze aufbauen willst. Schau mal, ob dich das etwas weiter bringt:
Grüße
rubberman
ich erahne, wie du das ganze aufbauen willst. Schau mal, ob dich das etwas weiter bringt:
@echo off &setlocal
set typ(.txt)=Textdatei
set typ(.pdf)=PDF-Datei
:: usw.
set folder(.txt)=Ordner1
set folder(.pdf)=Ordner2
:: usw.
set /p "lookup=Gib den Dateinamen ein: "
echo.
for /f "delims=" %%a in ('dir /a-d /b "%lookup%.*"') do (
set "file=%%a"
set "name=%%~na"
set "ext=%%~xa"
)
call set "typOut=%%typ(%ext%)%%
call set "folderOut=%%folder(%ext%)%%
if defined file (
echo Der Typ der Datei "%file%" ist "%typOut%".
echo Die Datei gehoert in das Verzeichnis "%folderOut%".
)
echo.
pause
Grüße
rubberman