我正在为媒体服务器整理一个脚本。 我需要浏览目录中的所有文件,然后最终在另一个文件夹中创建软链接以充当视频播放列表。 我刚开始,我的批处理脚本已经有问题

@echo off
SetLocal EnableDelayedExpansion

set TV="G:\TV"

FOR /R %TV% %%G in (.) DO (
 Pushd %%G
 Echo now in %%G

 for /f %%f IN ("dir /b") do (
    Echo %%f
 )

 Popd )
Echo "back home"
)

这会为每个文件生成一个清单,但文件名会在空格后切出! 看起来像这样:

now in G:\TV\UCB\UCB Season 3\.
Upright
Upright
Upright
Upright
...
now in G:\TV\Venture Bros\Season 3\.
File Not Found
now in G:\TV\Venture Bros\Season 4\.
The.Venture.Bros.S04E03.HDTV.XviD-2HD.avi
The.Venture.Bros.S04E04.HDTV.XviD-2HD.avi
The.Venture.Bros.S04E05.HDTV.XviD-2HD.avi

我该怎么做才能解决此问题? 获得文件后,创建软链接应该很容易。

===============>>#1 票数:0

只需在文件名周围加上引号即可:

Pushd "%%G"

===============>>#2 票数:0

您可以用一个简单的oneliner FOR循环替换所有BAT。

FOR /R G:\TV %%f in (*) do echo create soft link for %%f

  ask by Dan Little translate from so

未解决问题?本站智能推荐: