使用 BATCH 清理文件名以命名完整路径

Using BATCH to clean up file names to name full path

所有信息都位于一个文本文件中。我想从这里开始:

/var/www/xxx/video_folder_1:
New folder
New folder - Copy
New folder - Copy (10)
New folder - Copy (10) - Copy
New folder - Copy (10) - Copy - Copy
New folder - Copy (11)

/var/www/xxx/video_folder_2:
cideo.mp4
sadasd

为此:

/var/www/xxx/video_folder_1/New folder
/var/www/xxx/video_folder_1/New folder - Copy
/var/www/xxx/video_folder_1/New folder - Copy (10)
/var/www/xxx/video_folder_1/New folder - Copy (10) - Copy
/var/www/xxx/video_folder_1/New folder - Copy (10) - Copy - Copy
/var/www/xxx/video_folder_1/New folder - Copy (11)/
/var/www/xxx/video_folder_2/cideo.mp4
/var/www/xxx/video_folder_2/sadasd

老实说,我不知道如何处理这个问题,因为这超出了我的批处理技能。

试试这个:

@echo off
setlocal EnableDelayedExpansion

for /F "delims=" %%a in (test.txt) do (
   set "line=%%a"
   if "!line:~0,1!" equ "/" (
      set "header=%%a"
   ) else (
      echo !header:~0,-1!/%%a
   )
)