외부 명령은 AutoCAD 또는 AutoCAD 기반 제품이 실행 중인 동안 다른 프로그램이나 유틸리티를 시작합니다.
AutoCAD 또는 AutoCAD 기반 제품을 실행하는 동안 다음과 같은 다른 프로그램이나 유틸리티를 호출할 수 있습니다.
ASCII 문자 편집기에서 acad.pgp를 편집하여 명령 정의를 추가할 수 있습니다. acad.pgp의 첫 번째 섹션에는 외부 명령이 정의됩니다. acad.pgp의 명령 별칭 외에, 앞에 세미콜론(;)이 있는 주석 행도 찾을 수 있으며 파일 또는 명령 별칭에 대한 문자 정보도 추가할 수 있습니다.
외부 명령을 정의할 때 운영 체제 프롬프트에서 사용할 명령 이름과 운영 체제에 전달할 실행 가능한 명령 문자열을 지정합니다. 외부 명령 섹션의 각 행에는 다음과 같은 5개의 쉼표 구분 필드가 있습니다.
command,[executable/shell request],bit flag[,[*]prompt[,return_code]]
운영 체제 프롬프트에 입력되는 명령. 이름이 내부 AutoCAD 명령 이름인 경우에는 무시됩니다. 이름은 대소문자를 구분하지 않습니다.
명령 이름을 입력할 때 운영 체제로 전송되는 상수 문자열. 이는 운영 체제 프롬프트에서 실행할 수 있는 명령일 수 있습니다. 문자열에는 명령행 스위치나 매개변수가 포함될 수 있습니다. 이 문자열에서 대소문자를 구분할지 여부는 실행할 응용프로그램에 따라 다릅니다.
필수 비트 코드 매개변수. 다음 정수 값들의 조합을 추가하여 원하는 결과를 얻을 수 있습니다.
0 응용프로그램을 시작한 다음 종료될 때까지 기다립니다.
1 응용프로그램이 종료될 때까지 기다리지 않습니다.
2 응용프로그램을 최소화 모드에서 실행합니다.
4 응용프로그램을 "숨김" 상태로 실행합니다.
8 인수 문자열을 따옴표 안에 배치합니다.
비트 값 2와 4는 동시에 적용할 수 없습니다. 둘 다 지정된 경우에는 2비트만 사용됩니다. 응용프로그램이 완료되어야 이 프로그램을 사용할 수 있으므로 값 1 없이 값 2나 4를 사용하면 안 됩니다.
비트 값 8을 사용하면 공백이 포함된 파일 이름에 대해 del과 같은 명령이 제대로 실행됩니다. 이로 인해 파일 이름에 대한 공백 구분 리스트가 이 명령으로 전달되지 않게 됩니다. 다중 파일 지원을 사용하려는 경우에는 비트 값 8을 사용하지 마십시오.
선택적 필드. 이 프로그램의 명령 프롬프트에 표시할 프롬프트를 지정합니다. 이 프롬프트에 대한 응답이 실행 가능한 필드의 문자열에 추가됩니다. prompt 필드의 첫 번째 문자가 별표(*)이면 응답에 공백이 포함될 수 있으며 응답을 종료하려면 Enter 키를 눌러야 합니다. 그렇지 않으면 응답이 스페이스바 또는 Enter 키로 종료됩니다. 프롬프트가 지정되지 않았으면 입력하라는 메시지가 표시되지 않지만, 반환 코드를 제공하거나 프롬프트에 후행 공백을 두려면 쉼표를 추가해야 합니다.
선택적 비트 코드 매개변수. 다음 정수 값들의 조합을 추가하여 원하는 결과를 얻을 수 있습니다. 예를 들어, 값 1 과 2 가 필요하면 3 을 반환 코드로 사용합니다. 값은 다음과 같이 정의됩니다. 코드 0과 4는 Windows 환경에서 의미가 없으므로 포함되지 않았습니다.
1 DXB 파일을 로드합니다. AutoCAD 또는 AutoCAD 기반 제품은 명령이 종료된 후 $cmd.dxb라는 DXB 파일을 도면에 로드합니다. DXB 파일이 로드되면 $cmd.dxb 파일이 삭제됩니다. 이 동작의 결과는 DXBIN 명령과 같습니다.
2 DXB 파일에서 블록 정의를 구성합니다. 이 프로그램은 $cmd.dxb라는 DXB 파일에서 블록 정의를 작성합니다. 프롬프트 필드에 대한 응답이 블록 이름으로 사용됩니다. 이 이름은 현재 도면에 있지 않은 유효한 블록 이름이어야 하므로, 이 모드에서는 앞에서 정의한 블록을 다시 정의할 수 없습니다. 이 프로그램에서 DXB 파일을 로드한 후 $cmd.dxb 파일이 삭제됩니다. INSERT 명령의 기본 이름이 새로 정의된 블록에 설정됩니다.
start 및 cmd 운영 체제 명령은 외부 명령을 정의할 때 매우 유용합니다. start 또는 cmd 명령을 사용하지 않는 실행 파일 문자열을 지정하는 경우 윈도우를 닫아야 이 프로그램을 사용할 수 있습니다.
start 명령은 별도의 윈도우를 시작하고 지정된 프로그램이나 명령을 실행합니다. start가 매개변수 없이 사용되면 운영 체제용 새 명령 프롬프트 윈도우가 열립니다. start 명령에는 새 윈도우의 표시에 영향을 미치는 많은 명령행 스위치가 있습니다. 독립 실행형 응용프로그램을 실행하려면 명령줄 스위치 없이 start를 사용합니다. start 명령은 응용프로그램과 연관된 문서를 시작하는 데도 매우 유용합니다. 예를 들어, start를 사용하여 워드 프로세서로 작성한 문서나 HTML 파일을 직접 열 수 있습니다.
cmd 명령은 AutoCAD 또는 AutoCAD 기반 제품의 쉘 역할을 하는, 운영 체제용 명령 프롬프트 윈도우를 엽니다. 이 윈도우는 컨트롤이 운영 체제 프롬프트로 복귀하기 전에 닫아야 합니다. 두 가지 명령행 스위치 /c와 /k가 외부 명령에 유용합니다. /c 명령줄 스위치는 지정된 명령을 수행한 다음 정지됩니다(윈도우를 닫음). /k 명령줄 스위치는 지정된 명령을 수행한 다음 계속합니다(윈도우를 열어 둠). /k 명령줄 스위치를 사용할 때 exit 명령을 사용하여 명령 윈도우를 닫아야 합니다.
일반적으로 start는 이 프로그램과 별개의 프로세스인 응용프로그램을 실행하거나 새로운 윈도우를 작성하는 데 사용됩니다. cmd는 별개의 윈도우를 작성하지 않는 배치 파일 또는 명령 스크립트를 실행하는 데 사용되거나, 컨트롤을 이 프로그램으로 다시 전달하기 전에 닫아야 하는 윈도우를 작성하는 데 사용됩니다. 이러한 명령 및 스위치에 대한 자세한 정보는 운영 체제 명령 문서를 참고하십시오.
다음 예제에서는 RUN, LISTSET 및 DXB2BLK의 세 가지 새 명령을 정의합니다.
RUN, cmd /c,0,*Batch file to run: , LISTSET,cmd /k SET,0 DXB2BLK,cmd /c DXBCOPY,0,DXB file: ,2
RUN 명령은 배치 파일이나 명령 스크립트를 실행합니다. cmd 명령 뒤에 /c 명령줄 스위치를 사용하면 명령 윈도우가 열리고 배치 파일이 실행된 다음 닫힙니다.
LISTSET 명령은 운영 체제에 대한 현재 환경 변수 설정을 표시합니다. 이 예에서는 start를 사용하지 않고 cmd /k를 사용하므로 이 프로그램으로 복귀하기 전에 명령 윈도우를 닫아야 합니다. 이 윈도우를 활성 상태로 두려면 start /reAltime을 사용합니다. 이러한 명령 및 스위치에 대한 자세한 정보는 운영 체제 명령 문서를 참고하십시오.
DXB2BLK 명령은 지정한 DXB 파일에서 블록 정의를 작성합니다. DXB 파일은 모든 객체를 행으로 변환합니다. 이 절차로 얻을 수 있는 한 가지 장점은 문자 객체를 행으로 분해하는 간단한 방법을 제공하는 것입니다.
DXB2BLK는 지정된 DXB 파일 이름을 dxbcopy 배치 파일로 전달하여 해당 파일 이름을 파일 이름 $cmd.dxb에 복사합니다. 그러면 이 프로그램이 지정된 DXB 파일에서 블록을 작성합니다. DXB 파일 프롬프트에 제공된 이름이 새 블록 이름으로 사용됩니다. dxbcopy.cmd 파일을 작성하려면 운영 체제 프롬프트에 다음을 입력합니다.
echo copy %1.dxb $cmd.dxb > dxbcopy.cmd
이렇게 하면 dxbcopy.cmd 파일이 현재 디렉토리에 작성됩니다. 이 파일을 DOS 경로에 있는 디렉토리로 이동하거나 acad.pgp 파일에서 파일 위치를 명시적으로 지정합니다. 예를 들어, dxbcopy.cmd 파일이 D:₩cad에 있으면 acad.pgp 파일의 외부 명령 섹션에 다음을 입력합니다.
DXB2BLK, cmd /c D:\CAD\DXBCOPY,0,DXB file: ,2