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?

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

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
Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.