Переименуйте файл в соответствии со штрих-кодом, используя Windows CMD или пакетный скрипт - PullRequest
0 голосов
/ 01 января 2019

У меня есть несколько отсканированных изображений, которые со штрих-кодом, которые я нашел, - инструмент сканирования штрих-кодов cmd

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

. Это прочитает файл изображения и сохранит номер штрих-кода в файле output.txt.

IЯ хочу создать процесс, чтобы эта команда запускалась для каждого файла в папке и переименовывала этот файл, используя первые 3 или 4 цифры его штрих-кода.

Я пытаюсь выполнить цикл, он запускает команду для всех файлов PNG в папке ираспечатать вывод в файл.

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

но я хочу использовать вывод для переименования этого файла.

1 Ответ

0 голосов
/ 01 января 2019

Итак, если я правильно понял, что без макета для тестирования я создаю цикл, чтобы сделать это.

Если возможно, пожалуйста, предоставьте выходной макет 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"

        )    

    )
...