Main Content

외부 명령, 스크립트 및 프로그램 실행하기

! 연산자 또는 system 함수를 사용하여 MATLAB® 명령줄에서 운영 체제 명령을 실행할 수 있습니다.

셸 이스케이프 함수

느낌표 문자(!)는 셸 이스케이프입니다. ! 문자는 입력 라인의 나머지 텍스트가 운영 체제에 대한 명령임을 나타냅니다. 운영 체제에 따라 이 명령에 대한 입력값으로 제공할 수 있는 인수 목록의 최대 길이가 결정됩니다. ! 문자를 사용하면 MATLAB을 종료하지 않고 유틸리티 또는 다른 실행 가능한 프로그램을 호출할 수 있습니다.

예를 들어, 다음 코드를 실행하면 UNIX® 플랫폼에서 yearlystats.m이라는 파일을 편집하기 위해 vi 편집기가 열립니다.

!vi yearlystats.m

외부 프로그램이 완료되거나 사용자가 해당 프로그램을 종료하면 운영 체제는 MATLAB에 제어 권한을 되돌려줍니다. 백그라운드 모드에서 애플리케이션을 실행하거나 별도의 창에 출력값을 표시하려면 라인 끝에 &를 추가하십시오.

예를 들어, 다음 명령문을 입력하면 Microsoft® Excel® 프로그램이 열리고 명령 프롬프트에 제어 권한이 반환되므로 MATLAB 명령을 계속 실행할 수 있습니다.

!excel.exe &

Windows® 플랫폼에서 다음 명령을 입력하면 DOS 창에 결과가 표시됩니다.

!dir &

참고

수식에서 계승을 표현하려면 느낌표 대신 factorial 함수를 호출하십시오.

결과와 상태 반환하기

결과와 상태를 반환하는 프로그램을 실행하려면 system 함수를 사용하십시오.

환경 변수 지정하기

특정 환경 변수와 함께 운영 체제 명령을 실행하려면 시스템 호출 내에 운영 체제에 대한 모든 명령을 포함하십시오. 이는 MATLAB !(느낌표), system, dosunix 함수에 적용됩니다. 명령을 구분하려면 다음 방법을 사용하십시오.

  • Windows 플랫폼에서는 &(앰퍼샌드)를 사용합니다.

  • UNIX 플랫폼에서는 ;(세미콜론)을 사용합니다.

또는 MATLAB을 시작하기 전에 환경 변수를 설정하십시오.

시스템 경로에 없는 UNIX 프로그램 실행

UNIX 프로그램이 포함된 폴더가 MATLAB에서 인식하는 UNIX 시스템 경로에 없는 경우, 아래와 같은 방법으로 MATLAB에서 해당 파일을 실행할 수 있습니다. MATLAB에서 인식하는 경로를 보려면 MATLAB 명령 프롬프트에 다음과 같이 입력하십시오.

getenv('PATH')

다음 항목에 설명된 대로 현재 MATLAB 세션 또는 후속 MATLAB 세션의 시스템 경로를 수정할 수 있습니다.

현재 MATLAB 세션

현재 MATLAB 세션의 시스템 경로를 수정할 수 있습니다. 그러나, MATLAB을 다시 시작할 경우 해당 폴더는 더 이상 시스템 경로에 존재하지 않게 됩니다.

시스템 경로를 수정하려면 다음 중 하나를 수행하십시오.

  • MATLAB에서 현재 폴더를 실행하려는 프로그램이 있는 폴더로 변경합니다.

  • 명령 프롬프트에 다음 명령을 입력합니다.

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

현재 셸 세션 내의 모든 MATLAB 세션

셸 세션 내 시스템 경로를 수정할 수 있습니다. 현재 셸 세션 내에서 MATLAB을 다시 시작하는 경우에는 해당 폴더가 시스템 경로에 남아 있습니다. 그러나 셸 세션을 다시 시작한 다음 MATLAB을 다시 시작하면 해당 폴더가 시스템 경로에 더 이상 남아 있지 않습니다.

셸에서 시스템 경로에 폴더를 추가하려면 다음을 수행하십시오.

  1. MATLAB을 종료합니다.

  2. 사용 중인 셸에 따라 시스템 명령 프롬프트에 다음 중 하나를 입력합니다. 여기서 myfolder는 실행하려는 프로그램이 있는 폴더입니다.

    • bash 셸 또는 관련 셸의 경우:

      export PATH="$PATH:myfolder"
      
    • tcsh 셸 또는 관련 셸의 경우:

      setenv PATH "${PATH}:myfolder"
      
  3. MATLAB을 시작합니다.

  4. MATLAB 명령 창에 다음을 입력합니다.

    !echo $PATH
    

모든 MATLAB 세션

셸과 MATLAB 세션 전체에서 시스템 경로를 수정하려면 MATLAB 시작 파일의 시작 옵션에 설명되어 있는 것처럼 MATLAB 시작 파일에 다음 명령을 추가하십시오.

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

macOS에서 AppleScript 실행하기

macOS 플랫폼의 경우, MATLAB에서 직접 Apple AppleScript 프로그램을 실행할 수 없습니다. AppleScript 명령을 실행하려면 MATLAB unix 또는 !(느낌표) 함수를 사용하여 Apple macOS osascript 함수를 호출하십시오.

참고 항목