

Compile and runtime issues from the console are also intelligently highlighted and included in the document. CodeRunner checks your document for syntax errors and common issues, displaying errors directly inline with your code.
#Coderunner editor code#

Since BBEdit is really an advanced "text editor" and not necessarily just a script/code editor, it doesn't have all the code related bells and whistles of CodeRunner, but it does a good enough job for me nonetheless. I tend to use BBEdit myself, which does have the ability to run scripts. Those tend to be more for others than myself, but they can also be helpful later on when looking over the script to make any edits.Īs for the suggestions on an app to use, CodeRunner is a good app. I've even designed out workflow diagrams for my more complicated and lengthier scripts. You sometimes make decisions in your script creation that won't make sense down the line, so putting some comment blocks explaining what something is doing can be essential. It also makes doing loop/repeat type stuff easier to implement in general.Īnd documenting your script/code is important. It really makes understanding the code much easier since it means your if/then blocks are less complicated, among other things. I tend to put nearly anything that is semi complex or has even a small chance of needing to be done more than once in a script into a function block. For this reason, I recommend testing it in a policy called by whatever actual triggers will run it, after you've tested it locally.Īll excellent suggestions above from Although I do not do everything on that list, I'm particularly fond of points 4 & 5. There is a difference, and in some cases, it can make all the difference between working and failing.

Keep in mind that in some cases, scripts might run perfectly when run in Terminal (using either of the above methods), but fail when run by the Jamf Recurring Check-in trigger, simply because the recurring check-in trigger gets called by a LaunchDaemon, so it's running completely as root, whereas dropping it into Terminal it's really running as your account, even when you put sudo in front of it.

This is done with flags like -p1 for $4 and -p2 for $5, etc etc. With this method, you can also pass parameters to the script in case you happen to use that in it.
#Coderunner editor pro#
That's one way, though I would drop sudo in front of it since you likely want it running as root.īut if you want to simulate the script being run by a Jamf Pro policy, another way to do it would be to run it thru the jamf agent, like so sudo /usr/local/bin/jamf runScript -script "MyScriptName.sh" -path "/path/to/script/"
