1

pdftk ツールの「dump_data」機能を使用して、ページ数など、pdf に関するメタ情報を配信できます。次のコマンド...

pdftk test.pdf dump_data | find "NumberOfPages"

...完全なデータ ダンプ行を出力します。次に例を示します。

"Number of pages: 32"

バットファイルでさらに処理するために、カウント値 (上記の場合は 32) を新しい変数に取得するにはどうすればよいですか?

4

2 に答える 2

3

行の形式が固定されていて、表示されているものと一致する場合は、次のようなことを試すことができます。

@ECHO OFF
>testfile ECHO Number of pages: 32
FOR /F "delims=: tokens=2" %%A IN ('TYPE testfile ^| FIND "Number of pages"') DO SET /A pagenum=%%A
ECHO %pagenum%

出力:

32

当然、>testfile ECHO ...行はテスト目的のためのものでありTYPE testfile、ループの部分はFORあなたのpdftk test.pdf dump_data.

于 2012-02-24T15:32:27.767 に答える
2

これを試して:

FOR /F "usebackq delims=" %%v IN (`pdftk test.pdf dump_data ^| find "Number of pages"`) DO (
    FOR /F "delims=: tokens=1,2" %%i IN ("%%v") DO set NBPAGES=%%j
)

%バッチ ファイルで使用している場合は、上記の例のすべての変数の前に2 つ使用する必要があることに注意してください。コンソールから直接実行する場合は、1 つの%.

于 2012-02-24T15:32:16.070 に答える