Main Content

경고 표시 차단하기

프로그램에서는 실행에 부정적인 영향을 미치지 않는 경고를 발생시킬 수도 있습니다. 혼동을 피하기 위해, 메시지 상태를 'on'에서 'off'로 변경하여 실행 중에 경고 메시지를 숨길 수 있습니다.

특정 경고 메시지 표시를 차단하려면 먼저 경고 ID를 찾아야 합니다. 각 경고 메시지에는 고유한 식별자가 있습니다. MATLAB® 경고와 관련된 식별자를 찾으려면 경고를 재현해야 합니다. 예를 들어, 다음 코드는 MATLAB이 존재하지 않는 폴더를 제거하려고 할 때 발생하는 경고를 재현합니다.

rmpath('folderthatisnotonpath')
Warning: "folderthatisnotonpath" not found in path. 

참고

이 명령문이 경고 메시지를 생성하지 않는 경우에는, 다음 코드를 사용하여 모든 경고를 일시적으로 표시하도록 설정한 다음 원래 경고 상태를 복원하십시오.

w = warning ('on','all');
rmpath('folderthatisnotonpath')
warning(w)

가장 최근에 발생한 경고에 대한 정보를 가져오려면 warning 함수나 lastwarn 함수를 사용하십시오. 다음 코드는 query 상태를 사용하여 가장 최근 경고의 식별자와 현재 상태가 포함된 데이터 구조체를 반환합니다.

w = warning('query','last')
w = 

    identifier: 'MATLAB:rmpath:DirNotFound'
         state: 'on'
다음과 같이 변수 id에 식별자 필드를 저장할 수 있습니다.
id = w.identifier;

참고

warning('query','last')는 가장 최근에 표시된 경고를 반환합니다. MATLAB은 state: 'on'이고 경고 ID가 있는 경고 메시지만 표시합니다.

lastwarn 함수를 사용하면 메시지의 표시 상태에 관계없이 가장 최근의 경고 메시지를 찾을 수 있습니다.

lastwarn
ans =

"folderthatisnotonpath" not found in path.

경고 표시 활성화 및 비활성화

query 상태에서 식별자를 가져온 후에, 이를 사용하여 해당 식별자와 관련된 경고를 활성화하거나 비활성화할 수 있습니다.

이전 섹션에 나온 예제를 계속 사용하여, 경고 'MATLAB:rmpath:DirNotFound'를 비활성화하고 다시 작업을 수행하십시오.

warning('off',id)
rmpath('folderthatisnotonpath')

MATLAB에서 아무런 경고도 표시되지 않습니다.

경고를 활성화한 다음 존재하지 않는 경로를 제거하려고 해 보십시오.

warning('on',id)
rmpath('folderthatisnotonpath')
Warning: "folderthatisnotonpath" not found in path.

MATLAB은 이제 경고를 발생시킵니다.

가장 최근에 불러온 경고를 비활성화하려면 warning('off','last')를 사용하십시오.

모든 경고에 대한 제어 방법

여기서 모든이라는 용어는 오직 현재 MATLAB 세션 중에 발생했거나 수정된 경고만을 나타냅니다. 수정된 경고 상태는 현재 세션에서만 지속됩니다. 새로운 세션을 시작하면 디폴트 설정이 복원됩니다.

모든 경고 그룹을 나타내려면 식별자 'all'을 사용하십시오. 다음 두 구문 중 하나를 사용하여 모든 경고의 상태를 확인할 수 있습니다.

warning('query','all')
warning

모든 경고를 활성화하고 상태를 확인하려면 다음 구문을 사용하십시오.

warning('on','all')
warning('query','all')
All warnings have the state 'on'.

모든 경고를 비활성화하고 상태를 확인하려면 다음 구문을 사용하십시오.

warning('off','all')
warning
All warnings have the state 'off'.

관련 항목