Main Content

which

함수 및 파일 찾기

설명

예제

which itemitem에 대한 전체 경로를 표시합니다.

  • item이 MATLAB® 코드 파일(.m,.mlx, .p 확장자)에 있는 MATLAB 함수이거나 저장된 Simulink® 모델(.slx 또는 .mdl 확장자)인 경우, which는 대응하는 파일에 대한 전체 경로를 표시합니다. item은 MATLAB 경로에 있어야 합니다.

  • item이 불러온 Java® 클래스에 있는 메서드인 경우, which는 그 메서드에 대한 네임스페이스, 클래스, 메서드 이름을 표시합니다.

  • item이 작업 공간 변수인 경우, whichitem을 변수로 식별하는 메시지를 표시합니다.

  • item이 Simulink 모델인데 Simulink에 불려온 뒤 아직 저장되지 않은 상태라면, whichitem을 새로운 Simulink 모델로 식별하고 메시지를 표시합니다.

  • item이 확장자를 포함하는 파일 이름이고 이것이 현재 작업 폴더나 MATLAB 경로에 있다면 whichitem의 전체 경로를 표시합니다.

item이 오버로드된 함수나 메서드인 경우, which item은 첫 번째로 검색된 함수나 메서드의 경로만 반환합니다.

예제

which fun1 in fun2는 파일 fun2에서 호출하는 함수 fun1의 경로를 표시합니다. 이 구문을 사용하여 경로에 있는 함수 대신 로컬 함수가 호출되는지를 확인하십시오. 다만, 이 구문은 중첩 함수는 찾지 않습니다.

예제

which ___ -all은 MATLAB 경로에서 요청한 이름을 갖는 모든 항목의 경로와, 경로에 묵시적으로 추가된 특정 폴더 내 모든 파일의 경로를 표시합니다. 이러한 항목에는 인스턴스화된 클래스의 메서드도 포함됩니다. 이 특수 폴더에 대한 자세한 내용은 MATLAB 검색 경로란?을 참조하십시오. -all은 위에 열거한 구문의 입력 인수와 함께 사용할 수 있습니다.

예제

str = which(item)item에 대한 전체 경로를 str에 반환합니다.

예제

str = which(fun1,'in',fun2)는 파일 fun2에서 호출하는 함수 fun1에 대한 경로를 반환합니다. 이 구문을 사용하여 경로에 있는 함수 대신 로컬 함수가 호출되는지를 확인하십시오. 다만, 이 구문은 중첩 함수는 찾지 않습니다.

예제

str = which(___,'-all')which의 결과를 str에 반환합니다. 이 구문은 이전 구문 그룹의 모든 입력 인수와 함께 사용할 수 있습니다.

예제

모두 축소

pinv 함수를 찾습니다.

which pinv
matlabroot\toolbox\matlab\matfun\pinv.m

pinv는 MATLAB의 matfun 폴더에 있습니다.

또한 함수 구문을 사용하여 str에 대한 경로를 반환할 수 있습니다. which의 함수 형식에서는 모든 입력 인수를 작은따옴표로 묶으십시오.

str = which('pinv');

Java® 클래스의 인스턴스를 만듭니다. 이것은 클래스를 MATLAB®에 불러옵니다.

myDate = java.util.Date;

setMonth 메서드를 찾습니다.

which setMonth
setMonth is a Java method  % java.util.Date method

프라이빗 폴더에서 orthog 함수를 찾습니다.

which private/orthog
matlabroot\toolbox\matlab\elmat\private\orthog.m  % Private to elmat

MATLAB은 toolbox/matlab/elmat/private 하위 폴더에 있는 orthog.m에 대한 경로를 표시합니다.

area.m으로 호출되는 parseargs 함수를 확인합니다.

which parseargs in area
matlabroot\toolbox\matlab\specgraph\area.m (parseargs)  % Local function of area

또한 함수 구문을 사용하여 str에 대한 경로를 반환할 수 있습니다. which의 함수 형식에서는 모든 입력 인수를 작은따옴표로 묶으십시오.

str = which('parseargs','in','area');

예제 MAT 파일 'topography.mat'에 대응하는 matlab.io.MatFile 객체가 있다고 가정하겠습니다.

matObj = matfile('topography.mat');

입력 인수 (matObj)를 사용하여 호출했을 때 호출되는 who의 구현 경로를 표시합니다.

which who(matObj)
matlabroot\toolbox\matlab\iofun\+matlab\+io\MatFile.m  % matlab.io.MatFile method

결과를 변수 str에 저장합니다.

str = which('who(matObj)')
str =
matlabroot\toolbox\matlab\iofun\+matlab\+io\MatFile.m'

입력 인수 (matObj)를 지정하지 않으면 which가 첫 번째로 검색된 함수나 메서드의 경로만 반환합니다.

which who
built-in (matlabroot\toolbox\matlab\general\who)

openedFiles라는 이름을 가진 MATLAB 경로의 모든 항목에 대한 경로를 표시합니다.

which openedFiles
built-in (matlabroot\toolbox\matlab\iofun\openedFiles)

which의 결과를 str에 반환합니다.

프라이빗 폴더에서 orthog 함수를 찾습니다. which의 함수 형식에서는 모든 인수를 괄호에 넣고 작은따옴표로 묶어야 합니다.

str = which('private/orthog','-all');
whos str
  Name      Size            Bytes  Class    Attributes

  str       1x1               314  cell               

입력 인수

모두 축소

찾을 함수나 파일로, 문자형 벡터 또는 string형 스칼라로 지정됩니다. which의 함수 형식을 사용하는 경우, item 입력값을 작은따옴표 또는 큰따옴표로 묶습니다. item의 형식은 다음 중 하나일 수 있습니다.

item 입력 형식표시할 경로
fun

fun에 대한 전체 경로를 표시하며, 이 fun은 MATLAB 함수이거나, Simulink 모델, 작업 공간 변수, 불러온 Java 클래스의 메서드 또는 파일 확장자를 포함하는 파일 이름일 수 있습니다.

파일 확장자가 없는 파일의 경로를 표시하려면 which file.(파일 이름 다음에 오는 점은 필수임)을 입력하십시오. exist를 사용하여 다른 곳에도 파일이 있는지 확인할 수 있습니다.

/fun

검색을 검색 경로에 있는 fun이라는 이름의 함수로 제한합니다. 예를 들어, which /myfunction은 함수 myfunction.m에 대한 전체 경로를 표시하지만, 같은 이름의 내장 함수나 JAVA 함수의 전체 경로는 표시하지 않습니다.

private/fun검색을 fun이라는 이름의 프라이빗 함수로 제한합니다. 예를 들어, which private/orthogwhich('private/orthog')는 부모 폴더의 /private 자식 폴더에 있는 orthog.m의 경로를 표시합니다.

fun(a1,...,an)

입력 인수 a1,...,an을 사용하여 호출한 경우 호출되는 함수 fun의 구현 경로를 표시합니다. 이 구문을 사용하여 오버로드된 함수를 쿼리하십시오. 예제인 지정된 입력 인수로 호출된 함수 찾기 항목을 참조하십시오.

데이터형: char | string

찾을 함수로, 문자형 벡터 또는 string형 스칼라로 지정됩니다. fun1은 함수의 이름이거나 fun(a1,...,an) 형식일 수 있습니다. fun(a1,...,an) 형식에 대한 자세한 내용은 지정된 입력 인수로 호출된 함수 찾기 항목을 참조하십시오.

which의 함수 형식에서는 모든 fun1 입력값을 작은따옴표 또는 큰따옴표로 묶으십시오(예: which('myfun1','in','myfun2')).

데이터형: char | string

호출하는 파일로, 문자형 벡터 또는 string형 스칼라로 지정됩니다. fun2는 파일의 이름이거나 fun(a1,...,an) 형식일 수 있습니다. fun(a1,...,an) 형식에 대한 자세한 내용은 지정된 입력 인수로 호출된 함수 찾기 항목을 참조하십시오.

which의 함수 형식에서는 모든 fun2 입력값을 작은따옴표 또는 큰따옴표로 묶으십시오(예: which('myfun1','in','myfun2')).

데이터형: char | string

출력 인수

모두 축소

함수 또는 파일 위치로, '-all'을 사용하는 경우 문자형 벡터나 문자형 벡터로 구성된 셀형 배열로 반환됩니다.

  • item이 작업 공간 변수인 경우, str은 문자형 벡터 'variable'입니다.

  • str이 문자형 벡터로 구성된 셀형 배열인 경우, str의 각 행은 which의 결과를 식별합니다. 결과는 함수 우선 순위(Function Precedence Order)에 따라 정렬됩니다. 가려진 결과가 있는 경우에는 str에 있는 가려진 함수와 메서드의 순서가 제대로 정렬되어 있지 않을 수 있습니다. 특정 결과가 가려져 있는지 확인하려면 str을 지정하지 않은 채로 which를 호출하십시오. which는 가려진 결과를 주석 % Shadowed로 나타냅니다.

제한 사항

  • 클래스를 불러오지 않은 경우, which는 메서드가 @ 폴더에 있는 별도의 파일에 정의되어 있고 어떤 네임스페이스에도 없는 경우에만 해당 메서드를 찾습니다.

확장 기능

버전 내역

R2006a 이전에 개발됨

참고 항목

| | | | | | | | |

도움말 항목