使用Windows cmd或批处理脚本按照条形码重命名文件

时间:2019-01-01 01:58:28

标签: batch-file cmd barcode-scanner batch-rename

我有一些带有条形码的扫描图像,我找到了cmd条形码扫描仪工具

bardecode -f C:\input\file1.png -t code128 >> C:\output\output.txt

这将读取图像文件并将条形码编号保存在output.txt文件中。

我要进行处理,以便此命令在文件夹中的每个文件上运行,并使用条形码的前3或4位重命名该文件。

我尝试循环,它对文件夹中的所有png文件运行命令,并在文件中打印输出。

for %%i in (C:\input\*.png) do bardecode -f %%i -t code128 >> C:\output\output.txt

但是我想使用输出来重命名该文件。

1 个答案:

答案 0 :(得分:0)

因此,如果我了解得很好,没有布局可以测试,那么我会为执行此操作的循环成像。

请尽可能提供Barcode.exe输出布局,如果没有此布局,则没有太多参考可以进行测试。

请注意,我需要了解output.txt的布局以改进代码:

@echo off && cd /d "%~dp0" & setlocal enableextensions enabledelayedexpansion

for /f "tokens=* delims= " %%i in ('dir /b /a-d C:\input\*.png') do ( 

     for /f "tokens=*" %%I in ('"bardecode.exe" -f "!_name_!" -t code128') do (

         set _full_name=%%~fi
         set _name_only=%%~ni
         set _bar_code_to_rename=%%I
         set _bar_code_to_rename=!_bar_code_to_rename:~0,4!-!_name_only!
         ren "!_full_name!" "!_bar_code_to_rename!.png"

        )    

    )