> For the complete documentation index, see [llms.txt](https://docs.apryse.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.apryse.com/cli/pdf-pagemaster/usage/basics.md).

# Command-line PDF editing functions

Efficiently split, merge, edit, and secure PDF documents with Apryse's PDF PageMaster. Learn about command string syntax, usage examples, and batch processing options for optimal PDF management. The A

Apryse's **PDF PageMaster** is an efficient solution designed for splitting, merging, editing, and securing PDF documents, while presenting several options to control output document settings. This section includes the command string syntax, used both in the PDF PageMaster Command-Line Application as well as in PDF PageMaster SDK.

## Basic Syntax

The basic command-line syntax is:

`pagemaster [options] file1 file2 folder1 file3 ...`

See more options in [Command-Line Summary](/cli/pdf-pagemaster/cmd-options.md) for PDF PageMaster

## General Usage Examples

This section covers the basic usage of PDF PageMaster, explaining all the available options and illustrating examples.

* [Splitting PDF Documents](/cli/pdf-pagemaster/usage/split.md)
* [Merging PDF Documents](/cli/pdf-pagemaster/usage/merge.md)
* [Inserting or Appending PDF Documents](/cli/pdf-pagemaster/usage/insert.md)
* [Removing PDF Documents](/cli/pdf-pagemaster/usage/remove.md)
* [Processing Folders](/cli/pdf-pagemaster/usage/batch.md)
* [Output Document Options](/cli/pdf-pagemaster/usage/output.md)

## Batch Processing and the Use of Wildcards

PDF PageMaster supports processing of multiple input documents in the same run. For example, it is possible to specify multiple PDF folders and PDF PageMaster will automatically process all PDF documents matching a given file extension. For example, the following command-line will process all PDF documents in folders 'test1' and 'test2'

`c:\>pagemaster -o c:/output_folder c:/test1 c:/test2`

Wildcard characters can also be used to process multiple input files.

For example, if a directory contains the following PDF documents:

{% tabs %}
{% tab title="Shell" %}
{% code lineNumbers="true" %}

```sh
C:\test1 >dir
 Directory of C:\test1
 01/04/2007 03:35 PM <DIR> .
 01/04/2007 03:35 PM <DIR> ..
 05/21/2004 02:27 PM A1.pdf
 05/03/2005 09:38 AM A2.pdf
 05/20/2003 08:46 AM B1.pdf
 05/15/2003 12:50 PM B2.pdf
```

{% endcode %}
{% endtab %}
{% endtabs %}

To merge all PDF documents in this folder, you could specify:

`pagemaster -m -o c:/output_file.pdf c:/test1/*.pdf`

To merge all PDF documents staring with 'A', you could specify:

`pagemaster -o c:/output_file.pdf c:/test1/A*.pdf`

Or, to process all PDF documents ending with '1', you could specify:

`pagemaster -o c:/output_file.pdf c:/test1/*1.pdf`

You can use either of the two standard wildcards --- the question mark (?) and the asterisk (\*) --- to specify filename and path arguments on the command-line.

The wildcards are expanded in the same manner as operating system commands. (Please refer to your operating system user's guide if you are unfamiliar with wildcards). Enclosing an argument in double quotation marks (**" "**) suppresses the wildcard expansion. Within quoted arguments, you can represent quotation marks literally by preceding the double-quotation-mark character with a backslash (**\\**). If no matches are found for the wildcard argument, the argument is passed literally.\\

## Exit Codes

To provide additional feedback, PDF PageMaster returns exit codes after completing processing. The exit codes can be used to provide user feedback, for logging etc. This is particularly important for applications running in an unattended environment.

The following table lists possible exit codes and their description:

{% tabs %}
{% tab title="Shell" %}
{% code lineNumbers="true" %}

```sh
Exit Code       Description
--------------- ------------------------------------------------------------------
0               No errors. All files converted successfully.
1               Unspecified error.
2               Bad license key.
3               Failed to create the output directory.
4               Bad input filename or path.
5               Output file not specified.
6               Error reading the input document.
7               Document is secured. Need a valid password to open the document.
8               Error writing an output file or folder
9               No input files found
```

{% endcode %}
{% endtab %}
{% endtabs %}

All codes other then '0' indicate that there was an error during the conversion process.

The following illustrates a sample Windows batch script that processes exit codes:

{% tabs %}
{% tab title="Shell" %}
{% code lineNumbers="true" %}

```sh
@echo off rem run a simple merge operation...
pagemaster -o OUT -m in1.pdf in2.pdf In1Folder
if errorlevel 9 goto inputerr
if errorlevel 7 goto passwd
if errorlevel 1 goto othererror
if errorlevel 0 goto exit

:passwd
echo **Document is protected. Need a valid password to open the document**.
goto exit

:inputerr
echo No input files specified.
goto exit

:othererror
echo An error encountered during processing.
goto exit

:exit
```

{% endcode %}
{% endtab %}
{% endtabs %}


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://docs.apryse.com/cli/pdf-pagemaster/usage/basics.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
