# Batch operation

The decompiler supports the batch mode operation with the text and GUI versions of IDA. All you need is to specify the -Ohexrays switch in the command line. The format of this switch is:

```
-Ohexrays:-option1:-option2:outfile:func1:func2\...
```

The valid options are:

* **-new** decompile only if output file does not exist
* **-nosave** do not save the database (idb) file after decompilation
* **-errs** send problematic databases to hex-rays.com
* **-lumina** use Lumina server
* **-mail=<my@mail.com>** your email (meaningful if **-errs** option is used)

The output file name can be prepended with **+** to append to it. If the specified file extension is invalid, **.c** will be used.

The functions to decompile can be specified by their addresses or names. The **ALL** keyword means all non-library functions. For example:

```
idat -Ohexrays:-errs:-mail=john@mail.com:outfile:ALL -A input
```

will decompile all nonlibrary functions to **outfile.c**. In the case of an error, the **.idb** file will be sent to **hex-rays.com**. The -A switch is necessary to avoid the initial dialog boxes.
