Command line switches
IDA recognizes the following command line switches:
-a
-A
autonomous mode. IDA will not display dialog boxes. Designed to be used together with -S
switch.
-b####
loading address, a hexadecimal number, in paragraphs (a paragraph is 16 bytes)
-B
batch mode. IDA will generate .IDB and .ASM files automatically -c disassemble a new file (delete the old database)
-C####
-ddirective
A configuration directive which must be processed at the first pass. Example: -dVPAGESIZE=8192
-Ddirective
A configuration directive which must be processed at the second pass.
-f
disable FPP instructions (IBM PC only)
-h
help screen -i#### program entry point (hex)
-I#
set IDA as just-in-time debugger (0 to disable and 1 to enable)
-L####
name of the log file
-M
disable mouse (text only)
-O####
-o####
specify the output database (implies -c
)
-p####
-P+
compress database (create zipped idb)
-P
pack database (create unzipped idb)
-P-
-r###
-R
load MS Windows exe file resources
-S###
-T###
interpret the input file as the specified file type The file type is specified as a prefix of a file type visible in the 'load file' dialog box To specify archive member put it after the colon char, for example:
-TZIP
:
classes.dex You can specify any nested paths:
-T
| <ftype>[:<member>{:<ftype>:<member>}[:<ftype>]]
IDA does not display the "Load file" dialog in this case
-t
create an empty database.
-W###
specify MS Windows directory
-x
-z
-?
this screen (works for the text version)
?
this screen (works for the text version)
-h
this screen (works for the text version)
-H
this screen (works for the text version)
--help
this screen (works for the text version)
Debugging flags
The following bitfield can be used with the -z
directive:
Batch mode
It is possible to run IDA in so-called "batch mode", using the following the -B
switch:
which is equivalent to:
(For more information, please see the analysis.idc file in the IDC subdirectory.)
A couple notes:
regular plugins are not automatically loaded in batch mode because the
analysis.idc
file quits and the kernel has no chance to load them.
Executing a script
The script file extension (.idc
, .py
) is used to determine which interpreter will be used to run the script.
It is possible to pass command line arguments after the script name. For example: -S"myscript.py argument1 \\"argument 2\\" argument3"
The passed parameters are stored in the "ARGV" global IDC variable, which means:
For IDC scripts:
Use
ARGV.count
to determine the number of arguments.The first argument,
ARGV[0]
, contains the script name.
For Python scripts:
you can import the
idc
compatibility layer (import idc
), and thenaccess the
idc.ARGV
array
NOTE: The -S
switch is not available in the IDA Home edition.
Last updated
Was this helpful?