Я хотел бы перечислить и индексировать файлы (видеофайлы, такие как .mp4, .avi, ... в моем случае) в каталоге

Я использовал :

setlocal disableDelayedExpansion
for /f "delims=" %%A in ('forfiles /s /m * /c "cmd /c echo @relpath"') do (
  set "file=%%~A"
  setlocal enableDelayedExpansion
  echo !file:~2!
  endlocal
)

Но это будет только список файлов, а также включает в себя папку (я хотел бы только видео файлы). Пример:

"script.bat"
"video01.mp4"
"video02.webm"
"video03.avi"
"exportfolder"
"exportfolder\video04.avi"
"exportfolder\video05.mpg"

Я также не хочу тезисов: " script.bat " и " exportfolder "

Я знаю, что если я добавлю * .avi в строку forfiles, у меня больше не будет этой проблемы, но мне придется дублировать эти строки сценария для формата видео eatch ... не очень круто, верно ?! Было бы лучше, если бы я исключил каталоги и файлы, которые я знаю, я не хочу перечислять, нет?

Я думаю, что я должен поставить "/ ad" где-нибудь, чтобы скрыть каталоги, но где?

Но чтобы скрыть файлы, которые я не хочу перечислять и проиндексировать остальные (дать каждому из них имена и номера переменных, которые можно использовать), я понятия не имею ... perhapse где-то рядом с "!file:~ 2! "line?!

В любом случае, позвольте мне показать вам, что я хотел бы иметь:

1. "video01.mp4"
2. "video02.webm"
3. "video03.avi"
4. "exportfolder\video04.avi"
5. "exportfolder\video05.mpg"

это даст пользователю скрипта возможность выбрать файл по своему выбору с чем-то вроде:

set /p choice=What is the file you want to use ?
if %choice%==1 set file=indexlist1
if %choice%==2 set file=indexlist2
if %choice%==3 set file=indexlist3 
if %choice%==4 set file=indexlist4 

и скрипт продолжит работу с выбранным файлом ... если мне удастся поймать значение для напечатанного индексного файла, который я хочу.

Я надеюсь, что вы видите, что я хотел бы сделать ?!

Это много вопросов, знаете, но любая помощь будет отличной!

Спасибо !

Гийом.

1 ответ1

0

Я запускаю скрипт только на Windows 8 или 7;)

А что касается огромного количества видео или файлов, которые сделают прокрутку windows cmd сумасшедшей: этот скрипт предназначен для использования только внутри моей компании и только для нескольких пользователей (в основном редакторов или редакторов cg). Например, предупреждения в сценарии должно быть достаточно, чтобы предупредить пользователя не запускать сценарий в папке, содержащей огромное количество файлов или видео.

Но я согласен, этот "forefiles" cmd очень медленный ... даже в небольшой папке (несколько файлов).

Моя настоящая проблема заключается в том, что для одного проекта может быть несколько видеофайлов (из-за потребностей клиента в качестве примера), и я хотел дать пользователю возможность выбрать в этом пакете видео один (или несколько). ... но это другой вопрос ... опять же) ему нужно продолжить, а затем отправить его, для целей валидации для примера или даже для изменения размера партии ... все возможно;)

Я спрашиваю mysefl о программном обеспечении, которое уже разработано, которое может полностью выполнять свою работу ... но не совсем так, как я хочу, и с гораздо большим количеством кликов, большим количеством времени и меньшим прямым контролем или менее специфическими потребностями, чтобы получить результат, который будет выполнять скрипт быть в состоянии доставить.

Да, я понял принцип "время - деньги" ... к сожалению, я бы сказал. ^^

Итак, зная все это, моя идея может быть реализована таким образом?

Сейчас я тестирую сценарий и заставляю его работать, имея определенный формат именования для входного файла, но я бы хотел избавиться от этого! :)

спасибо, я надеюсь, что ответил вам правильно, и вы сможете поставить меня на путь!

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .