Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

Aktuelle Themen (A bis Z)

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
GELÖST

Text auslesen, falls Name vorhanden, Datei(en) verschieben

Frage Entwicklung Batch & Shell

Mitglied: OOmatrixOO

OOmatrixOO (Level 1) - Jetzt verbinden

13.02.2015, aktualisiert 14.02.2015, 689 Aufrufe, 2 Kommentare

Hallo.
Ich lasse mir Informationen von Filmdateien auslesen und in eine Textdatei speichern.

Das sieht so aus:

01.
File 'D:\Movies\2014.mkv ': container: Matroska [duration:7922976000000 segment_uid:a3fcdea6650c1200852f162d0c3a044f is_providing_timecodes:1] 
02.
Track ID 0: video (MPEG-4p10/AVC/h.264) [number:1 uid:3790950161031776682 codec_id:V_MPEG4/ISO/AVC codec_private_length:43 codec_private_data:0164001effe1001b6764001eacd940ec33a6a020202800000300080015f90078b16cb001000568ebecb22c language:und pixel_dimensions:944x400 display_dimensions:944x400 default_track:1 forced_track:0 enabled_track:1 packetizer:mpeg4_p10_video default_duration:41999999] 
03.
Track ID 1: audio (AC3/EAC3) [number:2 uid:14647068660427749778 codec_id:A_AC3 codec_private_length:0 language:ger default_track:1 forced_track:0 enabled_track:1 default_duration:32000000 audio_sampling_frequency:48000 audio_channels:6] 
04.
Track ID 2: subtitles (SubRip/SRT) [number:3 uid:10419281502289507242 codec_id:S_TEXT/UTF8 codec_private_length:0 language:und default_track:1 forced_track:0 enabled_track:1] 
05.
File 'D:\Movies\fun.mkv ': container: Matroska [duration:5982016000000 segment_uid:8837aa83709ef1fea2718eebbd640b5b is_providing_timecodes:1] 
06.
Track ID 0: video (MPEG-4p10/AVC/h.264) [number:1 uid:16048750410252151224 codec_id:V_MPEG4/ISO/AVC codec_private_length:43 codec_private_data:0164001effe1001b6764001eacd940ec33a6a020202800000300080015f90078b16cb001000568ebecb22c language:und pixel_dimensions:944x400 display_dimensions:944x400 default_track:1 forced_track:0 enabled_track:1 packetizer:mpeg4_p10_video default_duration:41999999] 
07.
Track ID 1: audio (AC3/EAC3) [number:2 uid:3544243278998007431 codec_id:A_AC3 codec_private_length:0 language:ger default_track:1 forced_track:0 enabled_track:1 default_duration:32000000 audio_sampling_frequency:48000 audio_channels:6] 
08.
File 'D:\Movies\Test.mkv ': container: Matroska [duration:2584208000000 segment_uid:c0dcb4213eb3849d22da7c98aa0879f6 is_providing_timecodes:1] 
09.
Track ID 0: video (MPEG-4p10/AVC/h.264) [number:1 uid:1 codec_id:V_MPEG4/ISO/AVC codec_private_length:46 codec_private_data:0164001fffe1001d6764001facc8602d0d7e7c05a808080a000003000200057e401e30633401000668e9786cb22c language:und pixel_dimensions:720x404 display_dimensions:720x404 default_track:1 forced_track:0 enabled_track:1 packetizer:mpeg4_p10_video default_duration:41666666] 
10.
Track ID 1: audio (AAC) [number:2 uid:2 codec_id:A_AAC codec_private_length:5 codec_private_data:119056e500 language:ger track_name:Stereo default_track:1 forced_track:0 enabled_track:1 audio_sampling_frequency:48000 audio_channels:2 tag_language:ger] 
11.
Track ID 2: audio (AAC) [number:3 uid:3 codec_id:A_AAC codec_private_length:5 codec_private_data:119056e50 language:eng track_name:Stereo default_track:0 forced_track:0 enabled_track:1 audio_sampling_frequency:48000 audio_channels:2 tag_language:eng] 
12.
Track ID 3: subtitles (SubStationAlpha) [number:4 uid:4 codec_id:S_TEXT/ASS codec_private_length:482 codec_private_data:5b53637269707420496e666f5d0d0a536372697074547970653a2076342e30302b0d0a436f6c6c6973696f6e733a204e6f726d616c0d0a506c6179526573583a20313931360d0a506c6179526573593a20313037360d0a54696d65723a203130302e300d0a577261705374796c653a20300d0a0d0a5b56342b205374796c65735d0d0a466f726d61743a204e616d652c20466f6e746e616d652c20466f6e7473697a652c205072696d617279436f6c6f75722c205365636f6e64617279436f6c6f75722c204f75746c696e65436f6c6f75722c204261636b436f6c6f75722c20426f6c642c204974616c69632c20556e6465726c696e652c20537472696b654f75742c205363616c65582c205363616c65592c2053706163696e672c20416e676c652c20426f726465725374796c652c204f75746c696e652c20536861646f772c20416c69676e6d656e742c204d617267696e4c2c204d617267696e522c204d617267696e562c20456e636f64696e670d0a5374796c653a2044656661756c742c417269616c2c37312c264830304646464646462c264830304646464646462c264830303046304630462c264830303046304630462c302c302c302c302c3130302c3130302c302c302e30302c312c322c332c322c32302c32302c32302c300d0a00 language:eng default_track:0 forced_track:0 enabled_track:1 tag_language:eng] 
13.
Track ID 4: subtitles (SubStationAlpha) [number:5 uid:5 codec_id:S_TEXT/ASS codec_private_length:482 codec_private_data:5b53637269707420496e666f5d0d0a536372697074547970653a2076342e30302b0d0a436f6c6c6973696f6e733a204e6f726d616c0d0a506c6179526573583a20313931360d0a506c6179526573593a20313037360d0a54696d65723a203130302e300d0a577261705374796c653a20300d0a0d0a5b56342b205374796c65735d0d0a466f726d61743a204e616d652c20466f6e746e616d652c20466f6e7473697a652c205072696d617279436f6c6f75722c205365636f6e64617279436f6c6f75722c204f75746c696e65436f6c6f75722c204261636b436f6c6f75722c20426f6c642c204974616c69632c20556e6465726c696e652c20537472696b654f75742c205363616c65582c205363616c65592c2053706163696e672c20416e676c652c20426f726465725374796c652c204f75746c696e652c20536861646f772c20416c69676e6d656e742c204d617267696e4c2c204d617267696e522c204d617267696e562c20456e636f64696e670d0a5374796c653a2044656661756c742c417269616c2c37312c264830304646464646462c264830304646464646462c264830303046304630462c264830303046304630462c302c302c302c302c3130302c3130302c302c302e30302c312c322c332c322c32302c32302c32302c300d0a00 language:eng default_track:0 forced_track:0 enabled_track:1 tag_language:eng]
Nun hab ich folgende Idee:
Per Batch soll in der Datei nach language:eng track_name gesucht werden.
Wenn in der Datei language:eng track_name vorhanden ist, soll 3 Zeilen weiter oben (bei File) der Dateiname / Pfad ausgelesen werden und die Datei in einen anderen Ordner verschoben werden. Es können sich um mehrere Dateien handeln, nicht wie hier im Beispiel nur eine.

Wäre dies überhaupt so machbar?

Vielen Dank.
Mit freundlichen Grüßen.

Mitglied: rubberman
LÖSUNG 13.02.2015, aktualisiert 14.02.2015
Hallo OOmatrixOO.

soll 3 Zeilen weiter oben
... und es sind ganz sicher immer 3 Zeilen?

Teste:
01.
@echo off &setlocal 
02.
set "textfile=movies.txt" 
03.
set "search=language:eng track_name" 
04.
set "newfolder=D:\Movies_eng" 
05.
 
06.
if not exist "%newfolder%\" md "%newfolder%" 
07.
 
08.
setlocal EnableDelayedExpansion 
09.
 
10.
set "found=" &set "num=" 
11.
for /f "delims=:" %%i in ('type "!textfile!"^|findstr /nc:"!search!"') do ( 
12.
  set /a "num=%%i - 3" 
13.
  set "found=!found!!num!: " 
14.
15.
 
16.
if not defined found exit /b 
17.
 
18.
for /f "tokens=2 delims='" %%i in ('type "!textfile!"^|findstr /n "^^^"^|findstr /b "!found!"') do ( 
19.
  endlocal 
20.
  set "file=%%i" 
21.
  setlocal EnableDelayedExpansion 
22.
  if "!file:~-1!"==" " ( 
23.
    move "!file:~,-1!" "!newfolder!\" 
24.
  ) else ( 
25.
    move "!file!" "!newfolder!\" 
26.
27.
)
Grüße
rubberman
Bitte warten ..
Mitglied: OOmatrixOO
14.02.2015 um 15:39 Uhr
Hallo.
Danke dir. Funktioniert auf Anhieb. Perfekt.

MfG
Bitte warten ..
Ähnliche Inhalte
Neue Wissensbeiträge
Humor (lol)

Wo ist der Fehler auf dem Bild?

(4)

Information von the-buccaneer zum Thema Humor (lol) ...

Windows Update

Offenbar erneutes MS-Update mit Fehlerschleife (2012 R2)

Information von VGem-e zum Thema Windows Update ...

Windows Installation

Unorthodoxer Weg, um an einen Offline-Installer für Adobe Flash zu kommen

(14)

Tipp von beidermachtvongreyscull zum Thema Windows Installation ...

Heiß diskutierte Inhalte
Exchange Server
gelöst Proxy Server Settings Cloud + EWS (17)

Frage von SomebodyToLove zum Thema Exchange Server ...

Windows Server
PDF Editor für den Einsatz auf Terminal Servern (16)

Frage von kwame501 zum Thema Windows Server ...

Windows Installation
Unorthodoxer Weg, um an einen Offline-Installer für Adobe Flash zu kommen (14)

Tipp von beidermachtvongreyscull zum Thema Windows Installation ...

Virtualisierung
Unterschied zwischen VDI und Terminal Server Lösungen (13)

Frage von tukawi06 zum Thema Virtualisierung ...