批处理脚本移动文件零字节同名

时间:2016-08-10 14:40:07

标签: batch-file

找不到这样做的方法,希望存储列表中文件夹中所有零字节文件的名称。

if exist *.xml for %%i in (*.xml) do if %%~zi==0 ECHO "%%i" >> list.txt

这样可行,但下一步是读取list.txt并移动所有具有相同文件名的文件,即使它具有不同的扩展名,另一个文件也不是具有相同文件名的零字节但是不同的延伸。

示例 12345.html 12345.xml - 两个文件都会被移动,因为名称相同。

任何帮助都会令人惊叹!

感谢

1 个答案:

答案 0 :(得分:0)

查看for /?中的修饰符。例如,%%~nA会为您提供不带扩展名的名称。

for /f "delims=" %%A in (list.txt) do (
  echo ---- %%nA ---- files with same basename:
  dir /b "%%~dpnA.*"
)