これを機能させるために、数日間頭を悩ませてきました。PDF ファイル内のテキストを検索し、そのファイルをフォルダーに移動するバッチ スクリプトを作成しようとしています。簡単に聞こえますが、変数を解析するための for ループを取得できませんでした。これは私がこれまでに持っているものです:
@echo off
SetLocal
setlocal enabledelayedexpansion
set dir=C:\Pdf Invoices
set inc=C:\Pdf Invoices\ESD\Includes
title Signing Invoices
echo Signing Invoices.....
echo.
:Movefiles
REM Check "IN" folder for invoices
if exist "%dir%\In\*.pdf" (goto MOVEFORPROCESSING) else (goto END)
:MOVEFORPROCESSING
for /f %%a in ('DIR /b "%dir%\In\*.pdf"') do (
move "%dir%\In\%%a" "%dir%\ESD\Processing\" >nul
)
for /r "%dir%\ESD\Processing" %%F in (*.pdf) do (
set type="%inc%\pdftextreplacer_cmd\pdftr.exe" -searchtext "USD" "%%F" | find /C "USD"
If "%type%" == "0" (
echo File is ZAR
) else (
echo File is USD
)
)
:END
基本的に、ファイルに USD が含まれている場合は USD フォルダーに移動し、IF ファイルに "ZAR" が含まれている場合は "ZAR" フォルダーに移動します。私は正常に動作するpdfファイルを検索するためにpdftextreplacerを使用しています。
どんな助けでも大歓迎です。