Appifying con Ornitorrinco:
Descargar el Ornitorrinco y crear una aplicación a partir de la secuencia de comandos de shell.
Ejemplo:
La configuración anterior crear una aplicación con una barra de progreso (incluyendo detalles) y puede ser abandonado - el proceso rsync tiene que ser cancelada (muerto) de forma manual, aunque.
La propia aplicación se puede encontrar con el centro de atención.
Sencillo AppleScript solución:
En Mavericks (y probablemente más adelante), tiene que permitir a la AppleScript app para el control de la computadora en "Preferencias del Sistema -> Seguridad Y Privacidad -> Privacidad -> Accesibilidad"
Abierto ScriptEditor, introduzca el siguiente fragmento de código y de exportación como una aplicación con un nombre único:
tell application "Terminal"
delay 2
set newWindow to do script "caffeinate -s rsync -hva --progress --stats --delete /path/to/folder /path/to/folder2"
activate
end tell
Si usted necesita permisos de root anteponer sudo -> "sudo caffeinate -s ...."
Puede refinar la AppleScript aplicación mediante la comprobación de si el Terminal ya tiene las ventanas abiertas y crear uno nuevo para ejecutar la secuencia de comandos de shell:
set myScript to "caffeinate -s rsync -hva --progress --stats --delete /path/to/folder /path/to/folder2"
tell application "System Events"
if exists (window 1 of process "Terminal") then
tell application "Terminal"
set newWindow to do script myScript
activate
end tell
else
tell application "Terminal"
delay 2
set Window1 to do script myScript
activate
end tell
end if
end tell
El AppleScript aplicación se puede encontrar con el centro de atención.
En Mountain Lion tiene que habilitar "Preferencias del Sistema -> Accesibilidad -> Habilitar el acceso para el dispositivo de asistencia" y cambiarlo un poco para obtener el AppleScript aplicación de soluciones funcione correctamente:
set myScript to "caffeinate -s rsync -hva --progress --stats --delete /path/to/folder /path/to/folder2"
tell application "System Events"
if exists (window 1 of process "Terminal") then
tell application "Terminal"
reopen
activate
set newWindow to do script myScript
end tell
else
tell application "Terminal"
reopen
activate
do script myScript in window 1
end tell
end if
end tell
AppleScript con "externo" script de shell (backup.sh):
Esta es la aproximación final, el OP está utilizando. Tomado de aquí. En Mavericks (y probablemente más adelante), tiene que permitir a la AppleScript app para el control de la computadora en "Preferencias del Sistema -> Seguridad Y Privacidad -> Privacidad -> Accesibilidad". Uno puede cargar el total .sh
(colocado en el interior de la app, Contents/Resources/backup.sh
) con:
set bashFile to path to resource "backup.sh"
tell application "Terminal"
delay 1
activate
set newWindow to do script "bash " & quoted form of (POSIX path of bashFile)
end tell
Puede refinar la AppleScript aplicación mediante la comprobación de si el Terminal ya tiene las ventanas abiertas y crear uno nuevo para ejecutar la secuencia de comandos de shell:
set bashFile to path to resource "backup.sh"
tell application "System Events"
if exists (window 1 of process "Terminal") then
tell application "Terminal"
delay 1
set newWindow to do script "bash " & quoted form of (POSIX path of bashFile)
activate
end tell
else
tell application "Terminal"
delay 2
set Window1 to do script "bash " & quoted form of (POSIX path of bashFile)
activate
end tell
end if
end tell