Me siento tentado por la capacidad de Automator.app de crear servicios contextuales en Mac OS X Snow Leopard. Me gustaría crear algunos accesos directos accesibles por teclado para manipular fragmentos de texto al llamar a un script de shell. Sin embargo, Automator solo sugiere bash, Perl, Python y Ruby (entre otros) para permitir esto. Pero, como PHP también viene con Mac OS (y, para ser honesto, es el único lenguaje de scripting que domino por completo), me pregunto por qué no puedo ejecutar un script de shell PHP.Cómo ejecuto un script de shell PHP como acción de Automator en Mac OS X
Respuesta
Esto es solo un truco, pero ¿qué tal crear una secuencia de comandos python, o ruby o perl o bash que llame al intérprete de línea de comandos php con la secuencia de comandos php que desea ejecutar?
Por ejemplo en bash podría ser tan simple como esto:
#!/bin/bash
php myscript.php
Ahora guarde, darle permiso de ejecución:
chmod +x my_bash_script.sh
y listo. Automator ahora puede ejecutar el script bash, que llama al script php.
Automator tiene una acción "Ejecutar script de shell" simplemente agréguela a su flujo de trabajo y siga las instrucciones en la esquina inferior izquierda.
Puede usar la acción "Ejecutar script de shell" para ejecutar un script PHP. Una forma autónoma es utilizar <<EOF ... EOF
para pasar el script para el comando php
:
(I recomendaría fuertemente el aprendizaje de Python, Ruby o Perl .. PHP hace tiene algunas ventajas para la web de programación , pero simplemente no está diseñado para secuencias de comandos de línea de comandos .. es sin duda se hace, no sólo va a ser casi tan agradable ..)
La lista de conchas que soporta Automator está en
/System/Library/Automator/Run\ Shell\ Script.action/Contents/Resources/Shells.plist
Puede seguir this guy's instructions para agregar una entrada para/usr/bin/php. Es posible que desee copiar el archivo .action en ~/Library/Automator primero, y trabajar en la copia en su lugar.
Por supuesto, es probablemente más fácil simplemente envolverlo en un script bash, como otros han sugerido.
La solución anterior de dbr es excelente, pero descubrí que no funcionó para mí, quizás debido a un cambio posterior en la versión de shell, php o OS (estoy usando OS X 10.8). Después de un montón de rasguños en la cabeza, encontré que la respuesta es citar el marcador de heredoc.
Una adición útil es utilizar la sintaxis apropiada para pasar los argumentos a la secuencia de comandos php. Poner todo eso junto, estoy usando:
php -- "[email protected]" <<'EOF'
<?php
print_r($argv);
?>
EOF
- 1. ¿Cómo ejecutar un script como root en Mac OS X?
- 2. Variable de Automator en script de shell
- 3. ¿Cómo ejecuto un script de shell como root (sudo)?
- 4. Mac-Automator, Cómo canalizar la salida de un script de shell para un cuadro de texto GUI
- 5. Mac OS X - shell script de ejecución de la interfaz gráfica de usuario de escritorio
- 6. Habilitación de extensión PHP PDO_ODBC en un Mac OS X
- 7. Obtenga SSID inalámbrico a través de shell script en Mac OS X
- 8. ¿Cómo ejecuto un editor desde un script de shell?
- 9. ¿Cómo puedo escribir un script de inicio para Mac OS X?
- 10. ¿Cómo hacer que zsh se ejecute como un shell de inicio de sesión en Mac OS X (en iTerm)?
- 11. JNotify en Mac OS X?
- 12. Actualizaciones de aplicaciones en Mac OS X
- 13. PHP mail() usando Sendmail en Mac OS X Leopard (10.5.8)
- 14. ¿Cómo ejecutar Clozure CL (Lisp) desde un script de shell en OS X?
- 15. Desarrollo de Blackberry en Mac OS X
- 16. ¿Cómo configurar libusb en Mac OS X?
- 17. UIActivityIndicatorView para Mac OS X?
- 18. Instalar PECL en Mac OS X 10.6
- 19. Loop desde la fecha de inicio hasta la fecha de finalización en el script de shell de Mac OS X
- 20. Edición de conjunto en Mac OS X
- 21. ¿Cómo instalo wxPython en Mac OS X?
- 22. Actualización de Ruby on Mac OS X
- 23. ¿Cómo ejecuto automáticamente una aplicación en USB attach o CD insert en Mac OS X?
- 24. Apache Error en Mac OS X Lion
- 25. ¿Ejecutar scripts de shell desde el Dock OS X?
- 26. Los scripts de shell en Mac OS X se ejecutan desde el directorio de inicio?
- 27. Configuración de DHCP en Mac OS X
- 28. ¿Cómo crear un servicio de Windows para Mac OS X?
- 29. Mac OS X View Swapping
- 30. Aprendiendo ASP.NET MVC en Mac OS X
para hacer este trabajo para Python, utilizando intérprete predeterminado de su env, cambio anterior a un solo guión: Pitón - "$ @" << 'EOF' – xref