1 votos

El programa de nodo se ejecuta en el terminal, pero no como un "AppleScript de script de shell"

Tengo una llamada ("el mercurio-parser" a través de Hilados, utilizando la ruta de acceso completa a la llamada) que convierte las páginas Web a las líneas de texto estructurado (la página que se utiliza en la llamada describe el servicio):

/Users/me/.yarn/bin/mercury-parser https://postlight.com/trackchanges/mercury-goes-open-source

Si ejecuta en la Terminal (con /bin/bash o /bin/sh en un Mac Pro 2013, macOS 10.14.5), me sale el resultado correcto: catorce líneas de texto estructurado desde la página Web.

Sin embargo, la misma llamada devuelve un error cuando se ejecuta como una sola línea, "¿shell script" AppleScript:

do shell script "/Users/me/.yarn/bin/mercury-parser https://postlight.com/trackchanges/mercury-goes-open-source"

El error devuelto es:

error "env: node: No such file or directory" number 127

FWIW, aquí están mis dos .perfil y mi .bash_profile textos (el último creado únicamente para intentar resolver este dilema), que no debería ser necesario, dado que la ruta de acceso completa a la llamada está siendo especificado, específicamente para evitar este tipo de error:

export PATH="/usr/local/bin:/usr/local/sbin:/usr/local/mysql/bin:$PATH"

export PATH="$HOME/.yarn/bin:$HOME/.config/yarn/global/node_modules/.bin:$PATH"

[[ -s $HOME/.nvm/nvm.sh ]] && . $HOME/.nvm/nvm.sh  # This loads NVM

source ~/.nvm/nvm.sh

export NVM_DIR="$HOME/.nvm"
[ -s "$NVM_DIR/nvm.sh" ] && . "$NVM_DIR/nvm.sh" # This loads nvm

¿Qué tengo que hacer para obtener la llamada para que se ejecute como un AppleScript?

[2019.6.26 a las 11:25:45 PM: Editado en un intento de clarificación.]

2019.6.27 a la 1:36:57PM: Por Marca de la sugerencia:

Gracias, Marcos, he duplicado mi .[bash_]perfil, le cambió el nombre a ".bashrc", y agregó: "bin/bash" a la llamada:

do shell script "bin/bash; /Users/RF/.yarn/bin/mercury-parser https://postlight.com/trackchanges/mercury-goes-open-source"

Sin embargo, (después de reiniciar) me sigue apareciendo el mismo error:

error "env: node: No such file or directory" number 127

Los pensamientos?

0voto

Oskar Puntos 1242

Esta es una gran pregunta y usted puede ser que necesite para pasar de nosotros (o github / pastebin) la secuencia real.

Aparte de eso, usted podría hacer dos cosas para hacer de este un mínimo, completa, verificable pregunta donde podría ser capaz de recomendar cambios de secuencia de comandos.

  1. Averiguar exactamente qué línea en el script está fallando mediante el establecimiento depurador de "x" y la publicación de los resultados de las / los números de línea que conduce hasta el final de error.
  2. Hacer un segundo script que se ejecuta env nodo o lo que sea necesario y, a falta de y añadiendo que para el post anterior.

Si usted encuentra que su error, usted puede hacer cosas en la terminal para encontrar la ruta de acceso completa a cada llamada y, a continuación, la secuencia de comandos puede ejecutar en entornos limitados y no necesita la instalación del terminal de perfil punto archivos.

which env

Iba a decirle a cambiar la secuencia de comandos para llamar a /usr/bin/env y lo mismo nvm y cualquier otros programas que obtienen archivo o directorio no existe, ya que es muy probable que el script se supone que las cosas relativa al directorio actual o tiene algún conjunto de variables.

AppleAyuda.com

AppleAyuda es una comunidad de usuarios de los productos de Apple en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X