W systemie Linux możesz to zrobić:
$ php blah.php> some.log &
działać blah.phpw tle. Jest to to samo, co Ctrl+, za następnie bgpolecenie.
Czy istnieje odpowiednik jednego lub obu dla wiersza polecenia systemu Windows?
W systemie Linux możesz to zrobić:
$ php blah.php> some.log &
działać blah.phpw tle. Jest to to samo, co Ctrl+, za następnie bgpolecenie.
Czy istnieje odpowiednik jednego lub obu dla wiersza polecenia systemu Windows?
Odpowiedzi:
System Windows ma podobną funkcjonalność jak Linux &, aby uruchamiać procesy tak, aby nie przejmowały konsoli. Zamiast flagi wiersza polecenia jest to jednak przedrostek polecenia.
Po prostu uruchom polecenie startprzed nim, takie jak:
C:\> start myprog.exe
Działa również z poleceniami, a nie tylko plikami wykonywalnymi:
C:\> start dir
Spowoduje to uruchomienie nowego okna konsoli i uruchomienie w nim polecenia.
Jeśli nie chcesz, aby po uruchomieniu polecenia pojawiło się nowe okno konsoli, użyj /Bprzełącznika w następujący sposób:
C:\> start /B myprog.exe
Istnieje kilka innych opcji, które można określić, aby skonfigurować sposób uruchamiania polecenia. Możesz je rozwiązać, czytając pomoc za startpomocą start /?.
Może to uruchomić plik w tle z wiersza polecenia lub plik wsadowy
@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
Teraz zamień MyFilena plik, który chcesz uruchomić w tle.
startpolecenia. Tworzy pośrednią rzecz, która uruchamia polecenie użytkownika, a następnie używa startpolecenia do uruchomienia pośredniej rzeczy. Więc to jest maszyna Rube Goldberg . Jak to jest lepsze od drugiej odpowiedzi, która sugeruje startbezpośrednie użycie ? (3) Pytanie pokazuje przekierowanie I / O ( > some.log). W jaki sposób użytkownik mógłby przekierować We / Wy z tą odpowiedzią? Umieścić go w wierszu polecenia lub wbudować w WshShell.Runwiersz skryptu?