[XDA Assist] aaron10151:
I'm attemptimg to root my Galaxy S4 on Mac OSX using JODIN 3 and it cannot obtain a PIT file regardless of what I do. Here is the script mumbo jumbo I don't understand, but it might help you. I'm on an AT&T SGH-I537, btw.

Device Removed Device Connected /var/folders/b6/q60p7jfd0hxg0t4l9xgk13qc0000gn/T/CASUALbrannen04-signup1-2014-06-08-11.42.55/ElevateScript.sh: line 2: export: download-pit': not a valid identifier /var/folders/b6/q60p7jfd0hxg0t4l9xgk13qc0000gn/T/CASUALbrannen04-signup1-2014-06-08-11.42.55/ElevateScript.sh: line 2: export:--output': not a valid identifier /var/folders/b6/q60p7jfd0hxg0t4l9xgk13qc0000gn/T/CASUALbrannen04-signup1-2014-06-08-11.42.55/ElevateScript.sh: line 2: export: /var/folders/b6/q60p7jfd0hxg0t4l9xgk13qc0000gn/T/CASUALbrannen04-signup1-2014-06-08-11.42.55/part.pit': not a valid identifier Usage: heimdall <action> <action arguments>Action: close-pc-screenArguments: [--verbose] [--no-reboot] [--stdout-errors] [--delay <ms>] [--usb-log-level <none/error/warning/debug>]Description: Attempts to get rid off the "connect phone to PC" screen.Action: detectArguments: [--verbose] [--stdout-errors] [--usb-log-level <none/error/warning/debug>]Description: Indicates whether or not a download mode device can be detected.Action: download-pitArguments: --output <filename> [--verbose] [--no-reboot] [--stdout-errors] [--delay <ms>] [--usb-log-level <none/error/warning/debug>]Description: Downloads the connected device's PIT file to the specified output file.Action: flashArguments: --repartition --pit <filename> --<partition name>|--<partition identifier> <filename> [...] [--verbose] [--no-reboot] [--stdout-errors] [--delay <ms>] [--usb-log-level <none/error/warning/debug>] or: --<partition name>|--<partition identifier> <filename> [...] [--pit <filename>] [--verbose] [--no-reboot] [--stdout-errors] [--delay <ms>] [--usb-log-level <none/error/warning/debug>]Description: Flashes one or more firmware files to your phone. Partition names (or identifiers) can be obtained by executing the print-pit action.WARNING: If you're repartitioning it's strongly recommended you specify all files at your disposal.Action: helpDescription: Displays this dialogue.Action: infoDescription: Displays information about Heimdall.Action: print-pitArguments: [--file <filename>] [--verbose] [--no-reboot] [--stdout-errors] [--delay <ms>] [--usb-log-level <none/error/warning/debug>]Description: Prints the contents of a PIT file in a human readable format. If a filename is not provided then Heimdall retrieves the PIT file from the connected device.Action: versionDescription: Displays the version number of this binary. /var/folders/b6/q60p7jfd0hxg0t4l9xgk13qc0000gn/T/CASUALbrannen04-signup1-2014-06-08-11.42.55/ElevateScript.sh: line 5: export:download-pit': not a valid identifier /var/folders/b6/q60p7jfd0hxg0t4l9xgk13qc0000gn/T/CASUALbrannen04-signup1-2014-06-08-11.42.55/ElevateScript.sh: line 5: export: --output': not a valid identifier /var/folders/b6/q60p7jfd0hxg0t4l9xgk13qc0000gn/T/CASUALbrannen04-signup1-2014-06-08-11.42.55/ElevateScript.sh: line 5: export:/var/folders/b6/q60p7jfd0hxg0t4l9xgk13qc0000gn/T/CASUALbrannen04-signup1-2014-06-08-11.42.55/part.pit': not a valid identifier Usage: heimdall <action> <action arguments>Action: close-pc-screenArguments: [--verbose] [--no-reboot] [--stdout-errors] [--delay <ms>] [--usb-log-level <none/error/warning/debug>]Description: Attempts to get rid off the "connect phone to PC" screen.Action: detectArguments: [--verbose] [--stdout-errors] [--usb-log-level <none/error/warning/debug>]Description: Indicates whether or not a download mode device can be detected.Action: download-pitArguments: --output <filename> [--verbose] [--no-reboot] [--stdout-errors] [--delay <ms>] [--usb-log-level <none/error/warning/debug>]Description: Downloads the connected device's PIT file to the specified output file.Action: flashArguments: --repartition --pit <filename> --<partition name>|--<partition identifier> <filename> [...] [--verbose] [--no-reboot] [--stdout-errors] [--delay <ms>] [--usb-log-level <none/error/warning/debug>] or: --<partition name>|--<partition identifier> <filename> [...] [--pit <filename>] [--verbose] [--no-reboot] [--stdout-errors] [--delay <ms>] [--usb-log-level <none/error/warning/debug>]Description: Flashes one or more firmware files to your phone. Partition names (or identifiers) can be obtained by executing the print-pit action.WARNING: If you're repartitioning it's strongly recommended you specify all files at your disposal.Action: helpDescription: Displays this dialogue.Action: infoDescription: Displays information about Heimdall.Action: print-pitArguments: [--file <filename>] [--verbose] [--no-reboot] [--stdout-errors] [--delay <ms>] [--usb-log-level <none/error/warning/debug>]Description: Prints the contents of a PIT file in a human readable format. If a filename is not provided then Heimdall retrieves the PIT file from the connected device.Action: versionDescription: Displays the version number of this binary.

Mac also keeps telling me to type in my password to allow osascript to make changes. Does that have something to do with it?