No debe utilizar algunos caracteres especiales (por ejemplo "
o \
) entre las comillas después del do shell script
parte de Apple scripts o tienes que escapar de ellos con una barra invertida.
En su ejemplo, la segunda comilla se interpreta como el final del comando del shell: defaults write com.apple.dock persistent-apps -array-add '{
que no es una línea válida.
Así que escapa de las comillas interiores con una barra invertida y tu Apple script debería funcionar:
try
do shell script "defaults write com.apple.dock persistent-apps -array-add '{\"tile-type\"=\"spacer-tile\";}'; killall Dock" with administrator privileges
end try
Si tienes un comando de shell como este
... awk '/disk/ {gsub("\"",""); print $NF}' ...
tendrías que escapar de cada "
y \
con un golpe de espalda:
try
do shell script "... awk '/disk/ {gsub(\"\\\"\",\"\"); print $NF}' ..."
end try