명령 프롬프트 : 백그라운드에서 스크립트 실행 (Linux의 & / bg와 동일)


23

Linux에서는 다음을 수행 할 수 있습니다.

$ php blah.php> some.log &

blah.php백그라운드에서 실행 합니다. 이것은 Ctrl+ 와 동일 z하며 bg명령입니다.

Windows 명령 프롬프트에 둘 중 하나에 해당합니까?


1
나는 그것을 믿지 않지만 필요한만큼 많은 명령 프롬프트를 시작할 수 있습니다. 무엇을 이루려고 노력하고 있습니까?
uSlackr

>를 사용하여 파일에 로그인하고 있고 거기에 앉으라는 메시지를 표시하고 싶지 않습니다. 동일한 디렉토리에서 동일한 프롬프트 창에서 계속 작업하고 싶을 수도 있습니다.
DOOManiac

어떤 버전의 창?
EBGreen

Windows 7 (64 비트)
DOOManiac

답변:


41

Windows는 Linux와 비슷한 기능을 &수행하여 콘솔을 인수하지 않도록 프로세스를 시작합니다. 그러나 명령 줄 플래그 대신 명령 접두사입니다.

다음과 같이 명령을 실행하기 만하면 start됩니다. C:\> start myprog.exe

또한 실행 파일뿐만 아니라 명령과도 작동합니다. C:\> start dir

새 콘솔 창이 시작되고 그 안에 명령이 실행됩니다.

명령을 실행할 때 새 콘솔 창이 나타나지 않게하려면 다음 /B과 같이 스위치를 사용하십시오 . C:\> start /B myprog.exe

명령 실행 방법을 구성하기 위해 지정할 수있는 몇 가지 다른 옵션이 있습니다. start을 사용하여 도움말을 읽으면 알아낼 수 있습니다 start /?.


1

명령 프롬프트 또는 배치 파일에서 백그라운드로 파일을 실행할 수 있습니다.

@Echo off
Echo Set WshShell = CreateObject("WScript.Shell")   >>%temp%\ghost.vbs
Echo WshShell.Run chr(34) ^& "MyFile" ^& Chr(34), 0 >>%temp%\ghost.vbs
Echo Set WshShell = Nothing                         >>%temp%\ghost.vbs
start %temp%\ghost.vbs
timeout /t 1 >nul
del %temp%\ghost.vbs

이제 MyFile백그라운드에서 실행하려는 파일로 바꿉니다.


2
(1) 어떻게 작동하는지 설명 할 수 있습니까? (2) 기본적으로 이것은 start명령을 사용합니다 . 사용자 명령을 실행하는 중간 항목을 만든 다음 start명령을 사용 하여 중간 항목을 시작합니다. 그래서 A의 루브 골드버그 머신 . start직접 사용하는 것이 다른 답변보다 나은 점은 무엇입니까? (3) 질문은 I / O 리디렉션 ( > some.log)을 보여줍니다 . 이 답변으로 사용자가 I / O 리디렉션을 어떻게 수행합니까? 명령 행에 넣거나 WshShell.Run스크립트 의 행에 작성 하시겠습니까?
Scott

의견에 응답하지 마십시오. 명확하고 완전하게 답변을 편집 하십시오.
Scott
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.