Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

Aktuelle Themen

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit

Batch - Dateien nach Endung in Ordner sotieren

Frage Entwicklung Batch & Shell

Mitglied: Tiborf

Tiborf (Level 1) - Jetzt verbinden

04.02.2010 um 15:33 Uhr, 3751 Aufrufe, 4 Kommentare

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:
>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
Mitglied: Biber
04.02.2010 um 16:04 Uhr
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
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
Bitte warten ..
Mitglied: Tiborf
05.02.2010 um 21:20 Uhr
Danke schon mal..
Ich finde auf einem Rechtschreibfehler sollte man nicht rumreiten. Und der Anfang entstand dadurch das ich eigentlich noch ein Lobtext in das Vorwort geschrieben hatte. Selbiger wurde anscheinend nicht mitgesendet. Denn mir würde es auch komisch vorkommen wenn jemand ein Gespräch so anfängt, selbst wenn dieser nicht der schlauste wäre.
Trotzdem möchte ich mich Entschuldigen.

Natürlich habe ich schon angefangen, aber mit einem anderen Teil, denn ich gebe zu das ich keine Ahnung hätte wie ich bei diesem Teil anfangen sollte.
Ein weiteres Problem von mir ist, dass ich mir im Forum die Beiträge durchlesen kann, aber es erst auf der Arbeit anwenden kann.
Zuhause ist mir ein VSystem mit einem Win OS zurzeit nicht möglich. Das sollte euch aber nicht stören .
Ich werde mir auch die Hilfe anschauen.
Die Datei sollte wie bei einem "dir" erscheinen:

...
>hallo
...
dir /B hallo.*
hallo.txt
Nur wird das nich in der Art funktionieren.
Ich bräuchte sozusagen die gleiche Ausgabe nur hinter dem "hallo.txt" muss dann "gehört in den Ordner Berichte"
Der Endbenutzer des Scripts kennt also beim Benutzen nicht die Dateiendung sondern nur den Namen.
Die Ansicht-Funktion vom Explorer kann von Nutzer nicht angewendet werden und wird vom Admin auch nicht geändert.
Ich hoffe man versteht nun was ich meine.

Und danke im Voraus ist für mich keines Falls falsch zu verstehen. Es bedeutet einfach dass ich jedem Danke der sich schon die Mühe macht, ich ihm aber nicht 2 Minuten später danken kann.
In diesem Sinne.

Mit freundlichen Grüßen
Tibor
Bitte warten ..
Mitglied: rubberman
05.02.2010 um 21:35 Uhr
Hallo Tiborf,

ich erahne, wie du das ganze aufbauen willst. Schau mal, ob dich das etwas weiter bringt:
01.
@echo off &setlocal 
02.
 
03.
set typ(.txt)=Textdatei 
04.
set typ(.pdf)=PDF-Datei 
05.
:: usw. 
06.
 
07.
set folder(.txt)=Ordner1 
08.
set folder(.pdf)=Ordner2 
09.
:: usw. 
10.
 
11.
set /p "lookup=Gib den Dateinamen ein: " 
12.
echo. 
13.
 
14.
for /f "delims=" %%a in ('dir /a-d /b "%lookup%.*"') do ( 
15.
  set "file=%%a" 
16.
  set "name=%%~na" 
17.
  set "ext=%%~xa"  
18.
19.
 
20.
call set "typOut=%%typ(%ext%)%% 
21.
call set "folderOut=%%folder(%ext%)%% 
22.
 
23.
if defined file ( 
24.
  echo Der Typ der Datei "%file%" ist "%typOut%". 
25.
  echo Die Datei gehoert in das Verzeichnis "%folderOut%". 
26.
27.
echo. 
28.
pause
Grüße
rubberman
Bitte warten ..
Mitglied: Tiborf
05.02.2010 um 22:10 Uhr
Das sieht für mein Wissen sehr viel versprechend aus.
Ich werde direkt Berichten wenn ich an ein WinOS rankomme.
Danke dir.
Bitte warten ..
Neuester Wissensbeitrag
Humor (lol)

Linkliste für Adventskalender

(3)

Information von nikoatit zum Thema Humor (lol) ...

Ähnliche Inhalte
Batch & Shell
gelöst Per Batch Dateien in einen Ordner - ext. Festplatte übertragen (2)

Frage von tocksick zum Thema Batch & Shell ...

C und C++
Dateien in Ordner kopieren anhand vom Teil eines Dateinamen (22)

Frage von onlyforu8373 zum Thema C und C ...

Heiß diskutierte Inhalte
Router & Routing
gelöst Ipv4 mieten (22)

Frage von homermg zum Thema Router & Routing ...

Exchange Server
gelöst Exchange 2010 Berechtigungen wiederherstellen (20)

Frage von semperf1delis zum Thema Exchange Server ...

Windows Server
DHCP Server switchen (20)

Frage von M.Marz zum Thema Windows Server ...

Hardware
gelöst Negative Erfahrungen LAN-Karten (19)

Frage von MegaGiga zum Thema Hardware ...