Yanıtlar:
START
Her programı çalıştırmak için komutu kullanmak size ihtiyacınız olanı sağlayacaktır:
START "title" [/D path] [options] "command" [parameters]
Her START
çağırma, parametresinde verilen komutu çalıştırır ve bir /WAIT
anahtarla yürütülmedikçe hemen geri döner .
Bu komut satırı uygulamaları için geçerlidir. Komut satırı olmayan uygulamalar yine de hemen geri döner, bu nedenle, hepsini senkronize olmayan bir şekilde çalıştırmak istiyorsanız, kullanın START
.
Önceki cevaplardan birkaçını birleştirerek deneyebilirsiniz start /b cmd /c foo.exe
.
Önemsiz bir örnek olarak, java / groovy / grails / gradle sürümlerini yazdırmak istiyorsanız, bunu bir toplu iş dosyasında yapabilirsiniz:
@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) gibi bir şey varsa, her biri bir java işlemiyle (yukarıdaki komutlara göre) birkaç child cmd.exe işlemi görürsünüz. Çıktı, bitirdikleri sırayla ekrana yazdırılacaktır.
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
komut dosyasını yürüttüğünüzde tüm komutların konsola yansıtılmasını önleyecek olan başında görürsünüz . @
Benzer ama sadece bu tek komutla içindir. Yani, bazen göreceksin @echo off
.
Yeni pencereler başlatmadan arka plan işlemlerini oluşturmak için start komutunu kullanabilirsiniz:
start /b foo.exe
Yeni işlem CTRL-C ile kesintiye uğramayacak; yalnızca CTRL-BREAK ile (veya pencereyi kapatarak veya Görev Yöneticisi aracılığıyla) öldürebilirsiniz.
BREAK
Bugünlerde klavyelerde nerede ?
Aşağıdaki satırlarla bir toplu iş dosyası oluşturun:
start foo.exe
start bar.exe
start baz.exe
Start komutu 3 komutları uyumsuz aday olacağını, böylece yeni bir pencerede komutu çalıştırır.
BAŞLAT komutunu kullanın :
start [programPath]
Program yolu boşluk içeriyorsa tırnak eklemeyi unutmayın. Bu durumda, açılış konsolu penceresi için bir başlık sağlamanız gerekir
start "[title]" "[program path]"
Bağımsız değişkenleri sağlamanız gerekiyorsa sonuna ekleyin (komut tırnak işaretleri dışında)
start "[title]" "[program path]" [list of command args]
Yeni bir konsol penceresi açmamak için / b seçeneğini kullanın (ancak bu durumda CTRL-C kullanarak uygulamayı kesintiye uğratamazsınız)
Üçüncü (ve potansiyel olarak çok daha kolay) bir seçenek var. Tek bir programın birden fazla örneğini döndürmek istiyorsanız, Xargs veya GNU Parallel gibi Unix stili bir komut işlemcisi kullanmak bunu oldukça basit bir işlem haline getirebilir.
Adlı bir Win32 Xargs klon var PPX2 bu oldukça basit hale getirir.
Örneğin, bir video dosyası dizinini dönüştürmek istiyorsanız, şu komutu çalıştırabilirsiniz:
dir /b *.mpg |ppx2 -P 4 -I {} -L 1 ffmpeg.exe -i "{}" -quality:v 1 "{}.mp4"
Bunu ayırdığınızda, dir /b *.mpg
geçerli dizindeki .mpg dosyalarının bir listesini alır, |
operatör bu listeyi ppx2'ye dönüştürür ve daha sonra paralel olarak yürütülecek bir dizi komut oluşturur; 4 burada, -P 4
operatör tarafından belirtildiği gibi . -L 1
Operatörü yalnızca bir seferde Ffmpeg için listeleme bizim dizinin bir satır göndermek için ppx2 söyler.
Bundan sonra, komut satırınızı ( ffmpeg.exe -i "{}" -quality:v 1 "{}.mp4"
) yazmanız yeterlidir ve {}
dizin listenizdeki her satır için otomatik olarak değiştirilir.
Her durum için evrensel olarak uygulanabilir değildir, ancak yukarıda ayrıntıları verilen toplu iş dosyası çözümlerini kullanmaktan çok daha kolaydır. Tabii ki, bir dosya listesi ile uğraşmıyorsanız, bir metin dosyasının veya başka bir programın içeriğini pxx2 girişine de ekleyebilirsiniz.
Çalışmak için bir şey alamadım Sadece yarasa komut dosyalarını başlatmak için powershell kullanarak sona erdi .. bazen bile cmd / c başlatmak neden emin değilim .. Hatta başlangıç cmd / c not defteri ve çıkış gibi şeyler denedim
start-Process "c:\BACKUP\PRIVATE\MobaXterm_Portable\MobaXterm_Portable.bat" -WindowStyle Hidden
help
dikkatlice okumalıydım . :)