| HOME / 정보공유 / AIX 명령어 모음

mkcatdefs
mkcatdefs mkcatdefs 명령 목적 메세지 소스 파일을 사전처리합니다. 구문
mkcatdefsSymbolNameSourceFile ... [ -h ]
설명
mkcatdefs 명령은 gencat 명령으로 입력하기 위해 메세지 소스 파일을 사전처리합니다.
SourceFile 메세지 파일은 기호로 된 식별자를 포함합니다. mkcatdefs 명령은 기호 식별자를 mkcatdefs 명령이 지정한 세트 번호 및 메세지 ID 번호와 동일시하는 문이 들어 있는 SymbolName_msg.h 파일을 생성합니다.
mkcatdefs 명령은 두 개의 출력을 작성합니다. 첫번째는 이름이 SymbolName_msg.h인 헤더 파일입니다. 기호로 된 이름을 mkcatdefs 명령이 지정하는 세트 및 메세지 번호와 연관시켜려면, 이 SymbolName_msg.h 파일을 응용프로그램에 포함시켜야 합니다.
mkcatdefs 명령은 기호 식별자가 아니라, 번호를 가진 메세지 소스 데이터를 표준 출력으로 전송합니다. 이 출력은 gencat 명령으로의 입력으로서 적합합니다. mkcatdefs 명령 출력을 다음 방식에 따라 gencat 명령의 입력으로서 사용할 수 있습니다.
새로운 메세지 소스를 파일에 기록하려면 mkcatdefs 명령을 >(방향 재지정 기호)와 함께 사용하십시오. 이 파일을 gencat 명령으로의 입력으로서 사용하십시오.
mkcatdefs 명령 출력 파일을 gencat 명령으로 직접 파이프하십시오.
runcat 명령을 mkcatdefs 명령 대신 사용하십시오. runcat 명령이 메세지 소스 파일을 mkcatdefs 명령을 통해 자동으로 전송한 다음, 파일을 gencat 명령으로 파이프합니다.
mkcatdefs 명령을 실행한 다음에 응용프로그램의 기호 이름을 사용해서 메세지를 참조할 수 있습니다.
플래그
-h SymbolName_msg.h 파일의 작성을 억제합니다. 이 플래그는 mkcatdefs 명령의 마지막 인수여야 합니다.
예제
symb.msg 메세지 소스 파일을 처리하고 출력을 symb.src 파일로 방향 지정하려면, 다음을 입력하십시오.
mkcatdefs symb symb.msg > symb.src
작성된 symb_msg.h 파일이 다음과 유사하게 표시됩니다.
#ifdef _H_SYMB_MSG
#define _H_SYMB_MSG
#include
#define MF_SYMB "symb.cat"
/* The following was generated from symb.src. */
/* definitions for set MSFAC */
#define SYM_FORM 1
#define SYM_LEN 2
#define MSG_H 6
#endif
mkcatdefs 명령은 또한 상징적인 식별자에 지정된 숫자를 사용하여 gencat 명령에 대한 symb.src 메세지 카탈로그 소스 파일을 작성합니다.
$quote " Use double quotation marks to delimit message text
$delset 1
$set 1
1 "Symbolic identifiers can only contain alphanumeric \
characters or the _ (underscore character)\n"
2 "Symbolic identifiers cannot be more than 65 \
characters long\n"
5 "You can mix symbolic identifiers and numbers\n"
$quote
6 remember to include the "msg_h" file in your program
소스 파일이 특정 번호를 포함했기 때문에 지정된 메세지 번호가 연속적이지 않습니다. mkcatdefs 프로그램은 항상 이전의 번호에 1을 더한 번호를 기호 식별자에 지정합니다.
주: mkcatdefs 명령은 출력 메세지 소스 파일에서 $delset 명령을 $set 명령 앞에 삽입합니다. 이는 gencat 명령으로 파이프할 때 기존 카탈로그의 단일 메세지를 추가, 삭제, 대체할 수 없다는 것을 의미합니다. 모든 메세지를 세트에 입력해야 합니다.
파일
/usr/bin/mkcatdefs mkcatdefs 명령이 들어 있습니다.
관련 정보
dspcat 명령, dspmsg 명령, gencat 명령, runcat 명령
catclose 서브루틴, catgets 서브루틴 및 catopen 서브루틴