You can use the shell in your own IDE script. Here is my script to copy a helper into the main app:
[code]'copy the scheduler to app/library/loginitems
dim appPath as string = currentBuildLocation + “/” + shellEncode(currentBuildAppName)
if right(AppPath, 4) <> “.app” then appPath = appPath + “.app”
'do directory for loginitems
dim cmd as String = "/bin/mkdir -p " + appPath + “/Contents/Library/LoginItems”
dim theOutput as string = doShellCommand(cmd)
if theOutput <> “” then print theOutput
'get path to scheduler
dim CountSlashes as integer = CountFields(ProjectShellPath, “/”)
dim ProjectName as string = NthField(ProjectShellPath, “/”, CountSlashes)
dim ProjectPath as String = Left(ProjectShellPath, Len(ProjectShellPath) - Len(ProjectName))
dim PathToScheduler64 as String = ProjectPath + shellEncode(“Builds - max scheduler.rbp/OS X 64 bit”)
'copy scheduler to app for 64bit
cmd = "usr/bin/ditto " + PathToScheduler64 + " " + appPath + “/Contents/Library/LoginItems”
'print "cmd " + cmd
theOutput = doShellCommand(cmd)
if theOutput <> “” and instr(theOutput, “can’t get real path”) = 0 then print theOutput
// Helper functions for this script
Function shellEncode(inValue as string) as string
Dim rvalue as string = replaceAll(inValue, " ", "\ ")
rvalue = replaceAll(rvalue, “&”, “\&”)
rvalue = replaceAll(rvalue, “-”, “\-”)
rvalue = replaceAll(rvalue, “(”, “\(”)
rvalue = replaceAll(rvalue, “)”, “\)”)
return rvalue
End Function[/code]
Anything else besides “ditto” gives problems with permissions. Been there, done that: have had much fun.
AFAIR there is a replacement (MBS???) so that you can use the shell for MAS. But honestly, you only need something like the script above.