[자유게시판] dos : start 명렬어 사용법 : unix/linux nice 와 유사
2023.03.27 20:29
[자유게시판] dos : start 명렬어 사용법 : unix/linux nice 와 유사
지정한 프로그램이나 명령을 실행할 수 있도록 별도의 창을 시작합니다.
START ["제목"] [/D 경로] [/I] [/MIN] [/MAX] [/SEPARATE | /SHARED]
[/LOW | /NORMAL | /HIGH | /REALTIME | /ABOVENORMAL | /BELOWNORMAL]
[/NODE <NUMA 노드>] [/AFFINITY <16진수 선호도 마스크>] [/WAIT] [/B]
[명령/프로그램] [매개 변수]
"제목" 창 제목 표시줄에 나타낼 제목입니다.
경로 시작 디렉터리입니다.
B 새 창을 만들지 않고 응용 프로그램을 시작합니다. 응용
프로그램에서 ^C 처리를 무시합니다. 응용 프로그램이 ^C
처리를 활성화하지 않는 한 ^Break로만 응용 프로그램을
인터럽트할 수 있습니다.
I 현재 환경이 아닌 새 환경을 원래의 환경 값으로
cmd.exe에 전달합니다.
MIN 창을 최소화하여 시작합니다.
MAX 전체 화면을 표시하며 시작합니다.
SEPARATE 16비트 Windows 프로그램을 별도의 메모리 영역에서 시작합니다.
SHARED 16비트 Windows 프로그램을 공유 메모리 영역에서 시작합니다.
LOW 응용 프로그램을 IDLE 우선 순위 클래스에서 시작합니다.
NORMAL 응용 프로그램을 NORMAL 우선 순위 클래스에서 시작합니다.
HIGH 응용 프로그램을 HIGH 우선 순위 클래스에서 시작합니다.
REALTIME 응용 프로그램을 REALTIME 우선 순위 클래스에서 시작합니다.
ABOVENORMAL 응용 프로그램을 ABOVENORMAL 우선 순위 클래스에서 시작합니다.
BELOWNORMAL 응용 프로그램을 BELOWNORMAL 우선 순위 클래스에서 시작합니다.
NODE 기본 NUMA(Non-Uniform Memory Architecture) 노드를 10진수
정수로 지정합니다.
AFFINITY 프로세서 선호도 마스크를 16진수로 지정합니다.
프로세스는 현재 실행 중인 처리기로 제한됩니다.
/AFFINITY 및 /NODE가 조합되면 선호도 마스크는
달리 해석됩니다. NUMA 노드의 처리기 마스크가
곧바로 전환되어 0비트에서 시작하는 것처럼
선호도 마스크를 지정하십시오.
프로세스는 지정한 선호도 마스크와 NUMA 노드 간에 공통이면서
현재 실행 중인 처리기로 제한됩니다.
공통 처리기가 없으면 프로세스는 지정한 NUMA 노드에서
실행 중인 처리기로 제한됩니다.
WAIT 응용 프로그램을 시작하고 끝날 때까지 기다립니다.
명령/프로그램
내부 cmd 명령 또는 배치 파일인 경우 명령 처리기는
/K 스위치를 사용하여 cmd.exe를 실행합니다.
이것은 명령 실행 후에도 창이 남아 있게
합니다.
내부 cmd 명령이나 배치 파일이 아니면
프로그램이므로 창 모드 응용 프로그램 또는 콘솔
응용 프로그램으로서 실행됩니다.
매개 변수 명령/프로그램으로 전달되는 매개 변수입니다.
참고: SEPARATE 및 SHARED 옵션은 64비트 플랫폼에서 사용할 수 없습니다.
/NODE를 지정하면 NUMA 시스템의 메모리 위치를 활용하는 방식으로 프로세스를
생성할 수 있습니다. 예를 들어 공유 메모리를 통해 두 프로세스 간에 통신하는
양이 상당하다면 메모리 대기 시간을 최소화하기 위해 동일한 기본 NUMA
노드를 공유하도록 두 프로세스를 만들 수 있습니다. 그러면 두
프로세스는 가능한 경우 동일한 NUMA 노드로부터 메모리를 할당하고, 지정한 노드
외부의 처리기에서 자유롭게 실행합니다.
/NODE 1 application1.exe를 시작합니다.
/NODE 1 application2.exe를 시작합니다.
이들 두 프로세스는 동일한 NUMA 노드 내의 특정 처리기에서 실행되도록
추가로 제한됩니다. 다음 예제에서 application1은 노드의 가장 상위
처리기 2개에서 실행되며, application2는 노드의 그 다음 두 처리기에서
실행됩니다. 이 예에서는 지정한 노드에 최소 4개의 논리 처리기가
있다고 가정합니다. 참고로, 노드 수는 선호도 마스크를 변경하지 않고도
컴퓨터의 유효한 노드 수로 변경할 수 있습니다.
/NODE 1 /AFFINITY 0x3 application1.exe를 시작합니다.
/NODE 1 /AFFINITY 0xc application2.exe를 시작합니다.
명령 확장을 사용하면 명령줄을 통한 외부 명령 호출이나 START명령이
아래와 같이 바뀝니다.
실행 파일이 아닌 파일을 단지 파일 이름을 명령으로 입력함으로써
파일 연결을 통해 호출할 수 있습니다. (예를 들면 WORD.DOC는
.DOC 파일 확장자와 연결된 응용 프로그램을 시작합니다.)
명령 스크립트 안에서 이러한 연결을 만드는 방법을 알려면
ASSOC와 FTYPE 명령을 입력하십시오.
32비트 GUI 응용 프로그램을 실행할 때는, CMD.EXE는
응용 프로그램이 끝나기를 기다리지 않고 명령 프롬프트로
반환됩니다. 명령 스크립트 안에서 실행되면 이러한 새 동작이
발생하지 않습니다.
확장자나 경로 한정자 없이 첫 토큰이 CMD인 명령줄을
실행할 때는 CMD를 COMSPEC 변수의 값으로 바꾸며 따라서
최소한의 경우 임의의 CMD.EXE 버전이 선택되는 것을 막을 수 있습니다.
첫 토큰이 확장자를 가지지 않는 명령줄을 실행할 때 CMD.EXE는
어떤 확장자를 어떤 순서로 찾을 것인지 결정하기 위해 PATHEXT
환경 변수 값을 사용합니다. PATHEXT 변수의 기본값은 아래와 같습니다.
.COM;.EXE;.BAT;.CMD
구문에서 PATH 변수와 같이 ; 기호로 요소를 분리한다는 점에
유의하십시오.
명령을 실행할 때는 확장자가 같지 않으면 확장자가 없는 이름이
디렉터리 이름과 같은 지 찾아보고 만약 있으면 START명령이
그 경로에서 탐색기를 시작합니다. 명령줄에서 이러한 것이 수행되면
그 경로에 CD /D를 수행하는 것과 같습니다.
위에 버튼을 눌러 주면 CMD 에서 지원하는 START의 관한 설명을 볼 수 있습니다.
START 명령어에 옵션이 참 많이 있습니다.
그중에 쉽게 활용 할 수 있는 옵션을 사용하여 예문과 함께 설명을 추가 하겠습니다.
배치파일을 작성하여 프로그램을 실행하는 방법을 보자면,
아래 예문을 실행한다면 메모장을 화면에 띄우게 되겠습니다.
메모장 위치는 알아야 하겠죠?
사용자가 임의로 메모장의 위치를 바꾸지 않는 이상
C:\Windows 경로에 notepad.exe
C:\Windows\System32 경로에 notepad.exe
64비트를 사용하고 있다면 C:\Windows\SysWOW64 경로에 notepad.exe 입니다.
cmd 에서 받아 들이는 구분은 명령어 및 실행될 파일의 경로+파일명+확장자명 입니다.
아래와 같이 간단하게 작성하여 실행되게 할 수도 있습니다.
아래와 같이 작성하고 실행해도 메모장이 실행되는 이유는 메모장의 경로가
시스템상에 선언되어 있기 때문입니다.
start notepad
아래의 방법을 사용해도 정상적으로 실행 됩니다.
start C:\Windows\notepad.exe
start C:\Windows\"notepad.exe"
start C:\Windows\notepad
start C:\Windows\System32\notepad.exe
start C:\Windows\System32\"notepad.exe"
start C:\Windows\System32\notepad
64비트일 경우만 해당
start C:\Windows\SysWOW64\notepad.exe
start C:\Windows\SysWOW64\"notepad.exe"
start C:\Windows\SysWOW64\notepad
이번엔 워드패드에 대해서 보자면,
사용자가 임의로 메모장의 위치를 바꾸지 않는 이상
C:\Windows 경로에 write.exe
C:\Windows\System32 경로에 write.exe
64비트를 사용하고 있다면 C:\Windows\SysWOW64 경로에 write.exe 입니다.
사용 방법은 notepad 예문과 동일합니다.
이번엔 바탕 화면에 "대한민국 만세.txt" 텍스트 파일이 있다고 가정하고,
배치파일로 작성하여 실행하려면 아래와 같이 하면 되겠습니다.
start notepad.exe "C:\Users\%username%\Desktop\대한민국 만세.txt"
notepad 를 통해서
C:\Users\%username%\Desktop 경로에 있는
대한민국 만세.txt를 start 하겠다 입니다.
바탕 화면에 "대한민국 만세.txt" 를 만들었다고 가정하고,
마우스로 "대한민국 만세.txt" 텍스트 파일을 더블 클릭하면 메모장으로 열립니다.
txt 확장자는 notepad 를 통해서 열리도록 기본 설정이 되어 있기 때문입니다.
아래 예문은
바탕 화면에 있는 "대한민국 만세.txt" notepad 를 통해서가 아닌
워드패드를 통해서 열리게 합니다.
start write.exe "C:\Users\%username%\Desktop\대한민국 만세.txt"
아래 예문들도 같은 결과를 얻을 수 있습니다.
start write "C:\Users\%username%\Desktop\대한민국 만세.txt"
start C:\Windows\System32\write.exe "C:\Users\%username%\Desktop\대한민국 만세.txt"
이번엔 디렉터리를 디스플레이 화면에 출력하는 방법을 보겠습니다.
바탕화면에 "독도는 우리 땅" 이름의 폴더가 있다고 가정하고,
아래 명령줄을 실행하게 되면 디스플레이 화면에 출력하게 됩니다.
start explorer.exe "C:\Users\%username%\Desktop\독도는 우리 땅"
explorer.exe 는 notepad.exe 와 write.exe 마찬가지로 같은 경로 위치에 있습니다.
explorer.exe 는 탐색기 입니다.
위에 명령줄은 탐색기를 통해서 "독도는 우리 땅" 폴더를 열게 된 겁니다.
explorer.exe 를 이용하여 인터넷 창도 열 수 있습니다.
제가 애용하고 있는 네이버 홈페이지 주소는
http://www.naver.com/ 입니다.
아래 예문은 디스플레이 화면에 네이버 홈페이지를 출력하는 명령줄입니다.
start explorer "http://www.naver.com/"
탐색기를 통하여 실행하는 방법 말고도
Iexplore.exe 를 이용하여 열 수도 있습니다.
Iexplore.exe 위치는 C:Program Files\Internet Explorer 안에 있습니다.
start "C:Program Files\Internet Explorer\Iexplore.exe" "www.naver.com"
start Iexplore.exe "www.naver.com"
start Iexplore http://www.naver.com/
start "%programfiles%\*\Iexplore.exe" "http://www.naver.com/"
위에 예문은 활용하기 나름이라고 생각합니다.
아래 예문은 MIN 옵션과 MAX을 사용 해봅니다.
MIN 창을 최소화하여 시작합니다.
MAX 전체 화면을 표시하며 시작합니다.
MIN 옵션과 MAX은 디스플레이 화면에 띄워질 창의 크기를 조절합니다.
MIN 옵션을 적용하여 실행된 창은 작업 표시줄로 들어갑니다.
MAX 옵션을 적용하여 실행된 창은 화면에 가득차게 제일 큰 크기로 보여줍니다.
아래 예문들을 실행해 본다면 해당 옵션의 의미를 바로 알 수있습니다.
start /MIN CMD
start /MAX CMD
아래와 같이 사용해도 되겠습니다.
아래와 같이 할 때 "" 는 탐색기에서 자동으로 뒤에 실행 될 프로그램의 확장자에 맞춰
프로그램을 실행하게 됩니다.
start "" "실행하고 싶은 프로그램의 전체 경로"
start "" "C:\Windows\System32\"notepad.exe"
[출처] https://m.blog.naver.com/jsh891212/220012089091
광고 클릭에서 발생하는 수익금은 모두 웹사이트 서버의 유지 및 관리, 그리고 기술 콘텐츠 향상을 위해 쓰여집니다.

