Melewati parameter opsional dalam skrip batch

0

Saya mencoba menulis skrip batch pertama saya dan mencoba memahami cara menyampaikan argumen. Ini adalah perintah yang sangat sederhana yang berjalan dengan baik cmd .

Perintah: C:\Program Files\Foo> myexe -sd tempVar >> C:\temp.txt

Sini -sd adalah opsi perintah dan tempVar adalah parameter lain (saya tahu nilai tempVar ini dan dapat membuat kode dalam skrip batch).

Skrip Batch
Start "C:\Program Files\Foo\myexe.exe" -sd tempVar

Kesalahan Saat mengeksekusi tentang file batch, saya mendapatkan pesan kesalahan -sd tidak dikenali. Tolong sarankan apa yang harus saya kerjakan / koreksi dalam skrip ini?

Rohit
sumber

Jawaban:

1

Parameter pertama ke start perintah adalah teks untuk ditampilkan di bilah judul jendela, dan nilai ini dalam tanda kutip. Jadi, dalam kasus Anda, start berpikir Anda ingin judul jendela mengatakan C: \ Program Files \ Foo \ myexe.exe . Lalu, Anda lewat -sd tempVar ke start perintah, dan tidak tahu apa artinya, karena mereka bukan parameter yang valid untuk start.

Coba ini sebagai gantinya ...

Start "" "C:\Program Files\Foo\myexe.exe" -sd tempVar
Patrick Seymour
sumber
Terima kasih @ Patrick. Kesalahan konyol di pihak saya. Mendapat keluaran di Konsol, sekarang akan bekerja pada pengalihan keluaran ke file teks.
Rohit
Juga, jika Anda ingin melakukan hal lain SETELAH baris itu dalam file batch, Anda mungkin ingin menambahkan fungsi / tunggu, atau file batch akan terus melakukan apa yang dilakukannya sebelum file exe Anda menyelesaikan pekerjaannya: Start /wait "" "C:\Program Files\Foo\myexe.exe" -sd tempVar
Nate