CMD dir Список видеофайлов — ошибка «Не найдено»

Я создал некоторый код командной строки (функция? Я не знаю технического термина, приношу свои извинения), который предназначен для поиска в сетевой папке (и всех ее подпапках) и перечисления пути к файлу только для тех файлов, которые относятся к определенному типу. . Сначала я попытался протестировать его в папке с меньшим количеством информации, однако получил ошибку File Not Found. Это меня смутило, потому что я заглянул в папку — в указанной папке определенно были файлы .VOB и .mp4.

Когда я запускаю приведенный ниже код, я не получаю ошибку, НО я получаю кучу файлов, которые мне не нужны (.pdf .xml .jpeg и т. д.), я думаю, потому что это системные файлы например файлы .jpeg для эскизов .avi.

dir "\\nas-rb4b\projectx2" /s /b *.avi *.mov *.mp4 *.wmv *.mpg *.lnk *.ldb *.rar *.mpeg *.m4v *.vob *.zip>Projx2RERUN.txt

Может ли кто-нибудь помочь мне понять, почему я получил ошибку File Not Found, когда попытался запустить тот же самый код, но с другой более конкретной папкой?

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


person R.E.L.    schedule 26.10.2018    source источник
comment
@KenWhite, согласно многочисленным источникам, которые я просматривал в Интернете, да. Например, как эта ссылка: ссылка, если только я не понял ее неправильно   -  person R.E.L.    schedule 26.10.2018
comment
@KenWhite, если вы посмотрите ниже на странице, вы найдете это: dir *.docx *.xlsx *.pptx   -  person R.E.L.    schedule 26.10.2018
comment
@KenWhite, есть также этот текст: мы даже можем указать несколько расширений в команде dir, чтобы вывести список файлов любого типа. Чтобы вывести список всех файлов, созданных с помощью приложений Office, таких как Word, Excel, Powerpoint и т. д., мы можем запустить команду ниже. Я не имею в виду никакого неуважения, я просто сбит с толку.   -  person R.E.L.    schedule 26.10.2018


Ответы (2)


Прочтите последнюю dir справочник по командам в Команды Windows:

Синтаксис:

dir [<Drive>:][<Path>][<FileName>] [...] [/p] [/q] [/w] [/d] [/a[[:]<Attributes>]][/o[[:]<SortOrder>]] [/t[[:]<TimeField>]] [/s] [/b] [/l] [/n] [/x] [/c] [/4]

Примечания:

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

Рассматриваемая команда dir "\\nas-rb4b\projectx2" /s /b *.avi *.mov *.mp4 (усеченная) говорит и выполняет следующее:

  • dir "\\nas-rb4b\projectx2" /s /b, (т.е. все файлы в "\\nas-rb4b\projectx2"), то
  • dir /s /b *.avi (т.е. все .avi файлов в текущем каталоге), затем
  • dir /s /b *.mov (т.е. все .mov файлов в текущем каталоге), затем
  • dir /s /b *.mp4 (т.е. все .mp4 файлов в текущем каталоге), …

Решение (прочитайте pushd< /a> и ссылку на popd ):

pushd "\\nas-rb4b\projectx2"
dir /s /b *.avi *.mov *.mp4 *.wmv *.mpg *.lnk *.ldb *.rar *.mpeg *.m4v *.vob *.zip>Projx2RERUN.txt
popd
person JosefZ    schedule 26.10.2018

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

dir /b /s \\nas-rb4b\projectx2\*.avi \\nas-rb4b\projectx2\*.mov \\nas-rb4b\projectx2\*.mp4 \\nas-rb4b\projectx2\*.wmv \\nas-rb4b\projectx2\*.mpg \\nas-rb4b\projectx2\*.rar \\nas-rb4b\projectx2\*.mpeg \\nas-rb4b\projectx2\*.m4v \\nas-rb4b\projectx2\*.vob \\nas-rb4b\projectx2\*.zip

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

Пока работает как задумано.

person R.E.L.    schedule 26.10.2018