Skip to content

As A CLI Tool

Rich Infante edited this page Apr 19, 2018 · 5 revisions

The V4 reports are not available yet, currently a work in progress on the feature/report-groups branch

Running as a CLI Tool

  Usage: ibackuptool [options]

  Options:

    -V, --version               output the version number
    -l, --list                  List Backups
    -b, --backup <backup>       Backup ID
    -d, --dir <directory>       Backup Directory (default: /Users/rich/Library/Application Support/MobileSync/Backup/)
    -r, --report <report_type>  Select a report type. see below for a full list.
    -i, --id <id>               Specify an ID for filtering certain reports
    -f, --formatter <type>      Specify output format. default: table
    -e, --extract <dir>         Extract data for commands. supported by: voicemail-files, manifest
    -o, --output <path>         Specify an output directory for files to be written to.
    -v, --verbose               Verbose debugging output
        --filter <filter>       Filter output fo r individual reports. See the README for usage.
        --join-reports          Join JSON reports together. (available for -f json or -f raw only!)
        --no-color              Disable colorized output (default: true)
        --dump                  alias for "--formatter raw"
        --quiet                 quiet all messages, except for errors and raw output
    -h, --help                  output usage information

Examples

# List all the backups on the system
ibackuptool -l 

# I'm using "0c1bc52c50016933679b0980ccff3680e5831162" as a placeholder.
# The list of backups contains the different UDIDs in the first column.
UDID="0c1bc52c50016933679b0980ccff3680e5831162"

# Run ibackuptool --help to get a list of reports that are available
ibackuptool -b $UDID --report '$TYPE'

Multiple-Reporting

You can also provide a comma separated list of reports to generate. Additionally, there is a special all report type which will run all available reports. This is best paired with the -o option for saving to disk and the -f option for selecting a format such as CSV, or JSON.

# Run all phone reports and wifi report.
ibackuptool -b $UDID --report 'phone.*,system.wifi'

# Report all possible
ibackuptool -b $UDID --report '*'

Reporting formats

iBackupTool now supports multiple kinds of data export, which can be selected using the -f flag.

  • table - Selected data columns in an ascii table
  • json - Selected data columns for display (same data as table)
  • csv - CSV file containing selected columns (same data as table)

Additionally, there are more comprehensive export functions that will export ALL the data collected, and keep original formatting and columns:

  • raw-csv - Full-data CSV export from each of the tables.
  • raw, raw-json - Full-data JSON export from each of the tables. This output can be quite large.

Joined Reports

Additionally, for the json and raw-json types, there's a --join-reports flag which will merge all of the data into a single JSON file, where the top level object has a key for each report type that is selected.

# Generate both wifi and calls reports, joined as JSON
ibackuptool -b $UDID -r systme.wifi,phone.calls -f json --join-reports

Output to disk

the -o <path> (--output <path>option specifies a folder to export reports to. If the directory does not exist, it will be created. For joined JSON reports, a single json file is exported instead of multiple files in a directory.

# Export wifi, calls, voicemail as CSV files to disk in a folder named "exported/"
ibackuptool -b $UDID --report system.wifi,phone.calls,phone.voicemail -f csv -o exported