Windows 명령 행의 백그라운드에서 GUI 프로그램을 실행할 수 있습니까?


13

예를 들어 Bash에서 다음과 같이 할 수 있습니다.

emacs foo.txt &

Windows에 해당하는 것이 있습니까? Windows 버전의 emacs 로이 작업을 수행하는 방법을 찾지 못하는 것 같습니다.

답변:


21

Windows의 명령 줄에서 프로그램을 시작하는 명령은 "시작"입니다.

Starts a separate window to run a specified program or command.

START ["title"] [/D path] [/I] [/MIN] [/MAX] [/SEPARATE | /SHARED]
      [/LOW | /NORMAL | /HIGH | /REALTIME | /ABOVENORMAL | /BELOWNORMAL]
      [/AFFINITY <hex affinity>] [/WAIT] [/B] [command/program]
      [parameters]

    "title"     Title to display in  window title bar.
    path        Starting directory
    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
    I           The new environment will be the original environment passed
                to the cmd.exe and not the current environment.
    MIN         Start window minimized
    MAX         Start window maximized
    SEPARATE    Start 16-bit Windows program in separate memory space
    SHARED      Start 16-bit Windows program in shared memory space
    LOW         Start application in the IDLE priority class
    NORMAL      Start application in the NORMAL priority class
    HIGH        Start application in the HIGH priority class
    REALTIME    Start application in the REALTIME priority class
    ABOVENORMAL Start application in the ABOVENORMAL priority class
    BELOWNORMAL Start application in the BELOWNORMAL priority class
    AFFINITY    The new application will have the specified processor
                affinity mask, expressed as a hexadecimal number.
    WAIT        Start application and wait for it to terminate

MIN 옵션을 사용하여 최소화 된 프로그램을 시작할 수 있습니다.


2
참고로이 경우 올바른 명령은 "start / B emacs foo.txt"입니다. 그렇지 않으면 자체 콘솔 창에서 실행되며 허용되지만 성가시다. :-)
Jason Baker

3

그것이 충분한 지 모르겠지만 시도해보십시오.

start emacs foo.txt

백그라운드로 들어 가지 않지만 명령에 대해 별도의 cmd.exe 창을 시작합니다.


2

HaHa, 나는 성공했다. 숭고한 text3을 마크 다운 미리보기 서버로 사용하는 것이 내 제안이며, 숭고한 텍스트 창을 닫은 후에는 작동하지 않습니다. 나는 많은 방법을 시도했지만 마침내 작동합니다. 먼저이 프로그램을 시작하기 위해 박쥐를 만들어야합니다.

start  /B "" "D:\dev\sublime3\Sublime Text 3\subl.exe" "-s" "%USERPROFILE%\Dropbox\dev\apis\*.markdown" 

sencond, 일정 작업 으로이 박쥐를 실행하십시오.

run window+R->taskschd.msc->add a task

이 일정에 따라이 방망이를 작동시키기위한 방아쇠를 추가하십시오

이 방망이를 실행할 작전으로 추가하십시오

이 결과는 숭고한 텍스트 창을 표시하지 않고 정상적으로 열리는 숭고한 텍스트와 충돌하게 작동합니다.

어쩌면 당신은 짐작 할 수 있습니다. 나는 OmniMarkupPreviewer플러그인을 사용 하여 markdown을 미리 봅니다. 매번 다른보기 ID를 사용하는이 버그 (또는 완벽한 기능은 아님)를 수정했습니다.


1

사용중인 Windows 버전에 따라 다릅니다.

Vista에서는 경로에 exe 이름을 입력하고 명령 프롬프트를 닫은 후 실행되도록해야합니다.



1

불행히도 나는 이것이 가능하다고 생각하지 않습니다.

Windows 스크립팅 호스트 스크립트에서 다음과 같은 작업을 수행 할 수 있습니다.

Set oShell = WScript.CreateObject("WScript.Shell")
Set oProc = oShell.Run "<your command here>",0,True

"0"이 결과 창을 숨겨야한다고 표시하는 경우 (다른 옵션은 http://msdn.microsoft.com/en-us/library/d5fk67ky(VS.85).aspx 의 설명서 참조 ) 및 " true "는 스크립트가 계속 진행되기 전에 명령이 완료되기를 기다립니다.

명령 줄에서 사용할 수있는 일반적인 "이 명령 숨김"스크립트로 이것을 마무리하는 것은 간단한 연습입니다.

Microsoft의 새로운 새 PowerShell을 설치 한 경우이 작업을 수행하는 더 쉬운 방법이있을 수 있습니다 (아직 PowerShell을 사용하지 않았습니다).

창을 최소화하고 싶다면 다른 언급 한 "start"명령을 사용하면됩니다. 불행히도 "/ B"옵션 (원하는 것 같음)은 명령에만 해당되며 화면에 표시되는 윈도우 응용 프로그램을 중지하지 않습니다.

참고 : 위의 중 숨겨 지거나 최소화 된 기본 창으로 프로그램을 시작하는 데 사용하는 프로그램은 일단 실행되면 표시되는 새 창을 만들거나 주 창을 띄우고 초점을 맞추는 것을 막을 수는 없습니다.


1

sc create service 파일과 매개 변수에 특수 문자가 있습니다.

sc create ngrok "cmd /c \"c:\tmp\ngrok.exe\" http 80" type=own type=interactive

1
sc는 nrgok binpath = "cmd / c \"c : \ tmp \ ngrok.exe \ "http 80"을 만듭니다. type = own type = interact
Lalo
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.