Как убрать пробел в партии - PullRequest
0 голосов
/ 15 мая 2019

Так что мой пакет в основном будет генерировать текстовый файл из файла PDF, который у меня есть в папке.Затем этот текстовый файл будет проанализирован с использованием пакетного скрипта, чтобы получить общий штраф.но я не могу исправить пробел, когда эхо между TOTAL и $.

Пример текстового файла содержит

                                  Daily Fine Collection

    BRANCH             Staff ID     LAST_NAME            Patron Barcode              DATED                 PAY

***************                                                                                             ------------
TOTAL                                                                                                         $3.00

После эха,это результат

02Dec17-Fine.txt : TOTAL                                                                                                         $3.00
04Dec17-Fine.txt : TOTAL                                                                                                          $30.00
05Dec17-Fine.txt : TOTAL                                                                                                           $36.00
06Dec17-Fine.txt : TOTAL                                                                                                          $21.00
07Dec17-Fine.txt : TOTAL                                                                                                        $17.00
Press any key to continue . . .

мой пакетный скрипт

@echo off
setlocal 
for /r %%i in (*.pdf) do "C:\Program Files\xpdf\bin64\pdftotext" -simple "%%i"

for /f "useback delims=: tokens=1-3" %%i in (`findstr /C:"TOTAL" "*.txt"`) do (
        echo %%i : %%j

    )
endlocal

1 Ответ

0 голосов
/ 15 мая 2019

Вот, пожалуйста, некоторые незначительные изменения:

@echo off
for /r %%i in (*.pdf) do "C:\Program Files\xpdf\bin64\pdftotext" -simple "%%i"

for /f "useback tokens=1-3 delims=: " %%i in (`findstr /R /C:"\<TOTAL\>" "*.txt"`) do (
      echo(%%i : %%j %%k
)

Мы только что добавили перемещенный delims=: " перед двойными кавычками, потому что мы хотим, чтобы он также захватывал пространство в качестве разделителя (как упоминалось@aschipfl в комментарии) мы также добавили значение токена 3, %%k

Я также изменил вашу findstr команду, чтобы использовать регулярное выражение для соответствия точному слову TOTAL, если у вас могут быть другие слова, содержащие словоВСЕГО.Я также удалил setlocal и endlocal, потому что, насколько я вижу, вам здесь это не нужно.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...