답변:
START
명령을 사용하여 각 프로그램을 실행하면 필요한 것을 얻을 수 있습니다.
START "title" [/D path] [options] "command" [parameters]
모든 START
호출은 /WAIT
스위치로 실행되지 않는 한 해당 매개 변수에 제공된 명령을 실행하고 즉시 리턴합니다 .
이는 명령 줄 앱에 적용됩니다. 명령 줄이없는 앱은 어쨌든 즉시 반환되므로 모두 비동기 적으로 실행하려면을 사용하십시오 START
.
이전 답변 몇 가지를 결합하면 시도해 볼 수 있습니다. start /b cmd /c foo.exe
있습니다.
간단한 예를 들어, java / groovy / grails / gradle 버전을 인쇄하려면 배치 파일로이를 수행 할 수 있습니다.
@start /b cmd /c java -version
@start /b cmd /c gradle -version
@start /b cmd /c groovy -version
@start /b cmd /c grails -version
Process Explorer (Sysinternals)와 같은 것이 있다면 위의 명령에 따라 java 프로세스를 사용하여 몇 개의 자식 cmd.exe 프로세스가 각각 표시됩니다. 출력은 완료된 순서대로 화면에 인쇄됩니다.
start /b : Start application without creating a new window. The
application has ^C handling ignored. Unless the application
enables ^C processing, ^Break is the only way to interrupt
the application
cmd /c : Carries out the command specified by string and then terminates
echo off
를 실행할 때 모든 명령이 콘솔에 에코되는 것을 방지하는 시작 부분이 표시됩니다. 이것은 @
비슷하지만 그 단일 명령에만 해당됩니다. 따라서 때때로을 보게 될 것 @echo off
입니다.
새 창을 시작하지 않고 start 명령을 사용하여 백그라운드 프로세스를 생성 할 수 있습니다.
start /b foo.exe
새로운 프로세스는 CTRL-C로 중단 할 수 없습니다. CTRL-BREAK를 사용하거나 창을 닫거나 작업 관리자를 통해서만 죽일 수 있습니다.
BREAK
요즘 키보드 는 어디에 있습니까 ?
START 명령을 사용하십시오 .
start [programPath]
프로그램 경로에 공백이 있으면 따옴표를 추가해야합니다. 이 경우 오프닝 콘솔 창의 제목을 제공해야합니다.
start "[title]" "[program path]"
인수를 제공해야하는 경우 끝에 명령 따옴표 외부에 추가하십시오.
start "[title]" "[program path]" [list of command args]
새 콘솔 창을 열지 않으려면 / b 옵션을 사용하십시오 (이 경우 CTRL-C를 사용하여 응용 프로그램을 중단 할 수 없음)
세 번째 (및 잠재적으로 훨씬 쉬운) 옵션이 있습니다. 단일 프로그램의 여러 인스턴스를 스핀 업하려는 경우 Xargs 또는 GNU Parallel과 같은 Unix 스타일 명령 프로세서를 사용하면 상당히 간단한 프로세스를 만들 수 있습니다.
PPX2라는 win32 Xargs 클론이 있습니다. 이 매우 간단합니다.
예를 들어, 비디오 파일의 디렉토리를 트랜스 코딩하려면 다음 명령을 실행할 수 있습니다.
dir /b *.mpg |ppx2 -P 4 -I {} -L 1 ffmpeg.exe -i "{}" -quality:v 1 "{}.mp4"
이것을 분리 dir /b *.mpg
하고 현재 디렉토리에서 .mpg 파일 |
목록을 가져 오면 연산자는이 목록을 ppx2로 파이프 한 다음 병렬로 실행할 일련의 명령을 빌드합니다. -P 4
운영자가 여기에 지정한대로 한 번에 4 개 . 그만큼-L 1
연산자는 한 번에는 FFmpeg에 나열 우리의 디렉토리의 한 줄을 보낼 수 ppx2을 알려줍니다.
그런 다음 명령 줄 ( ffmpeg.exe -i "{}" -quality:v 1 "{}.mp4"
)을 작성하면됩니다.{}
디렉토리 목록의 각 행이 자동으로 대체됩니다.
모든 경우에 보편적으로 적용되는 것은 아니지만 위에서 설명한 배치 파일 해결 방법을 사용하는 것보다 훨씬 쉽습니다. 물론 파일 목록을 다루지 않으면 텍스트 파일이나 다른 프로그램의 내용을 pxx2의 입력으로 파이프 할 수도 있습니다.
나는 아무것도 할 수 없었습니다. 배트 스크립트를 시작하기 위해 powershell을 사용했습니다. 때로는 심지어 cmd / c를 시작해도 왜 그런지 모르겠습니다 ..start cmd / c notepad & exit
start-Process "c:\BACKUP\PRIVATE\MobaXterm_Portable\MobaXterm_Portable.bat" -WindowStyle Hidden
help
주의 깊게 읽어야합니다 . :)