CMD目录列表视频文件-找不到错误

时间:2018-10-26 16:17:52

标签: command-line command-prompt directory-listing

我制作了一些命令行代码(功能?我不知道技术术语,我很抱歉),目的是在网络文件夹(及其所有子文件夹)中查找,并仅列出这些文件的文件路径。特定类型。我尝试先在包含较少信息的文件夹上对其进行测试,但是出现错误File Not Found。这让我感到困惑,因为我查看了文件夹-在指定的文件夹中肯定有.VOB和.mp4文件。

当我运行下面包含的代码时,我没有收到错误,但是我得到了一堆我不想要的文件(.pdf .xml .jpeg--等),我认为是因为它们系统文件,例如.avi缩略图的.jpeg文件。

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

有人可以帮助我理解为什么在尝试运行完全相同的代码但使用其他更具体的文件夹时出现File Not Found错误的原因吗?

我也不知道如何修改代码/功能以排除不是列出的文件类型也不是系统文件夹的文件。一如既往,我们非常感谢您的帮助!

2 个答案:

答案 0 :(得分:2)

读取dir command reference中最新的Windows Commands

Syntax:

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

Remarks:

  

要使用多个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个文件),...

解决方案(也请阅读pushdpopd参考):

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

答案 1 :(得分:1)

根据Ken White的一些建议以及herehere给出的答案以及here的信息,我做出了下面的表达式,最终对我有用

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

这不是很漂亮,但是它允许我仅使用一个表达式来搜索多种文件类型,并将它们的路径全部发送到一个txt文件,而不必分别搜索每个文件扩展名。

到目前为止,它已按预期工作。