Esta página aún no se ha traducido para esta versión. Puede ver la versión más reciente de esta página en inglés.

Ejecute comandos, scripts y programas externos

Puede ejecutar mandatos de sistema operativo desde la línea de mandatos utilizando el operador o la función.MATLAB®!system

Función de escape de Shell

El carácter de signo de exclamación (), a veces llamado Bang, es un.!shell escape El carácter indica que el resto de la línea de entrada es un comando para el sistema operativo.! El sistema operativo determina la longitud máxima de la lista de argumentos que puede proporcionar como entrada para el comando. Se usa para llamar a utilidades u otros programas ejecutables sin renunciar.!MATLAB

Por ejemplo, el código siguiente abre el editor vi para un archivo denominado en una plataforma.yearlystats.mUNIX®

!vi yearlystats.m 

Cuando finalice el programa externo o salga del programa, el sistema operativo devolverá el control.MATLAB Para ejecutar la aplicación en el modo de fondo o Mostrar la salida en una ventana independiente, agregue al final de la línea.&

Por ejemplo, la siguiente instrucción abre el Microsoft®Excel® programa y devuelve el control al símbolo del sistema para que pueda continuar ejecutando comandos.MATLAB

!excel.exe & 

El siguiente comando en una plataforma muestra los resultados en una ventana de DOS.Windows®

!dir & 

Nota

Para usar el signo de exclamación en una expresión factorial, llame a la función.factorial

Devolver resultados y estado

Para ejecutar un programa que devuelva resultados y estado, utilice la función.system

Especificar variables de entorno

Para ejecutar comandos de sistema operativo con variables de entorno específicas, incluya todos los comandos en el sistema operativo dentro de la llamada del sistema. Esto se aplica a las funciones (Bang), y.MATLAB!systemdosunix Para separar comandos:

  • En plataformas, uso (ampersand)Windows&

  • En plataformas, uso (punto y coma)UNIX;

Alternativamente, establezca las variables de entorno antes de comenzar.MATLAB

Ejecutar programas fuera de la ruta del sistemaUNIX

Puede ejecutar un programa desde el momento en que la carpeta que contiene ese archivo no se encuentra en la ruta del sistema a la que está visible.UNIXMATLABUNIXMATLAB Para ver la ruta visible, escriba lo siguiente en la solicitud de comando.MATLABMATLAB

getenv('PATH')

Puede modificar la ruta del sistema para la sesión actual o en sesiones posteriores, tal y como se describe en estos temas:MATLABMATLAB

Sesión actualMATLAB

Puede modificar la ruta del sistema para la sesión actual.MATLAB Cuando se reinicia, la carpeta ya no está en la ruta de acceso del sistema.MATLAB

Para modificar la ruta del sistema, realice una de las siguientes acciones.

  • Cambie la carpeta actual a la carpeta que contiene el programa que desea ejecutar.MATLAB

  • Escriba los siguientes comandos en el símbolo del sistema.

    path1 = getenv('PATH') path1 = [path1 ':/usr/local/bin'] setenv('PATH', path1) !echo $PATH 

Entre sesiones en sesión de Shell actualMATLAB

Puede modificar la ruta del sistema dentro de una sesión de Shell. Cuando se reinicia dentro de la sesión de Shell actual, la carpeta permanece en la ruta del sistema.MATLAB Sin embargo, si reinicia la sesión de Shell y, a continuación, reinicia, la carpeta ya no está en la ruta de acceso.MATLAB

Para agregar una carpeta a la ruta del sistema desde el Shell, haga lo siguiente.

  1. Salida.MATLAB

  2. En función del shell que esté utilizando, escriba uno de los siguientes elementos en el símbolo del sistema, donde myfolder es la carpeta que contiene el programa que desea ejecutar:

    • Para Shell o relacionado:bash

      export PATH="$PATH:myfolder"
      
    • Para Shell o relacionado:tcsh

      setenv PATH "${PATH}:myfolder"
      
  3. Empezar.MATLAB

  4. En la ventana de comandos, escriba:MATLAB

    !echo $PATH 

En todas las sesionesMATLAB

Para modificar la ruta del sistema en el Shell y las sesiones, agregue los siguientes comandos al archivo de inicio como se describe en.MATLABMATLABOpciones de inicio en archivo de inicioMATLAB

path1 = getenv('PATH') path1 = [path1 ':/usr/local/bin'] setenv('PATH', path1) !echo $PATH 

Ejecutar AppleScript En macOS

En macOS plataformas, no puede ejecutar el Apple AppleScript programa directamente desde.MATLAB Correr AppleScript comandos, llame a la Apple macOS función utilizando las funciones o (Bang).osascriptMATLABunix!

Consulte también