Bagaimana cara menjalankan perintah cmd melalui file batch?


90

Saya ingin menulis file batch yang akan melakukan hal-hal berikut dalam urutan tertentu:

  1. Buka cmd
  2. Jalankan perintah cmd cd c:\Program files\IIS Express
  3. Jalankan perintah cmd iisexpress /path:"C:\FormsAdmin.Site" /port:8088 /clr:v2.0
  4. Buka Internet Explorer 8 dengan URL =http://localhost:8088/default.aspx

Catatan: Jendela cmd tidak boleh ditutup setelah menjalankan perintah.

Saya mencoba menjalankan cmd.exe / k "cd \ & cd ProgramFiles \ IIS Express" , tetapi tidak menyelesaikan tujuan saya.


6
apa masalah yang kamu hadapi?
argentum47

Jawaban:


110

Jadi, buat file batch yang sebenarnya: buka notepad, ketik perintah yang ingin Anda jalankan, dan simpan sebagai .batfile. Kemudian klik dua kali file .bat untuk menjalankannya.

Cobalah sesuatu seperti ini sebagai permulaan:

c:\
cd c:\Program files\IIS Express
start iisexpress /path:"C:\FormsAdmin.Site" /port:8088 /clr:v2.0
start http://localhost:8088/default.aspx
pause

1
terima kasih @Blorgbeard. itu bekerja kecuali baris ke-4. itu tidak membuka url yang diberikan.
patel

apakah browser terbuka sama sekali?
Blorgbeard keluar

Oh, saya rasa saya tahu apa yang terjadi - lihat suntingan saya, saya menambahkan "mulai" sebelum iisexpressbaris.
Blorgbeard keluar

@Blorgbeard, Saya mencoba pendekatan Anda "C:\Program Files\MongoDB\Server\3.3\bin\mongod.exe" --install --dbpath=C:\data\db --logpath=C:\data\log\log.txt --auth --servicedan tidak berhasil. Ketika saya menjalankan baris ini dalam CMDsegala hal baik-baik saja. Dalam kedua kasus tersebut, saya menjalankannya sebagai admin. Tolong beritahu saya, apa yang saya lakukan salah?
Mike B.

4
@Tokopedia startmengambil argumen pertama yang dikutip sebagai judul jendela. Cobastart "" "C:\Program Files\MongoDB\Server\3.3\bin\mongod.exe" --install --dbpath=C:\data\db --logpath=C:\data\log\log.txt --auth --service
Stephan

24

Menurut saya sintaks yang benar adalah:

cmd /k "cd c:\<folder name>"

4
Opsi yang sangat bagus '/ k'. Dengan cara ini bahkan setelah menekan CTRL + C cmd tidak keluar. Terima kasih banyak :-)
Pushpendra

16

Ini memperbaiki beberapa masalah dengan jawaban Blorgbeard (tetapi belum teruji):

@echo off
cd /d "c:\Program files\IIS Express"
start "" iisexpress /path:"C:\FormsAdmin.Site" /port:8088 /clr:v2.0
timeout 10
start http://localhost:8088/default.aspx
pause

8

cmd / c "perintah" sintaks bekerja dengan baik. Selain itu, jika Anda ingin menyertakan file yang dapat dieksekusi yang berisi spasi di jalur, Anda memerlukan dua set tanda kutip.

cmd /c ""path to executable""

dan jika eksekusi Anda membutuhkan input file dengan spasi di jalur yang lain

cmd /c ""path to executable" -f "path to file"" 

6
@echo off
title Command Executer
color 1b

echo Command Executer by: YourNameHere
echo #################################
: execute
echo Please Type A Command Here:
set /p cmd=Command:
%cmd%
goto execute

3
"Bagaimana cara menjalankan perintah cmd melalui file batch?" Heh, secara teknis benar.
Vivek Chavda

2
Secara teknis benar..ya ... tetapi juga persis seperti yang Anda butuhkan jika Anda menggunakan komputer sekolah dan prompt perintah dinonaktifkan tetapi file batch tidak.
RetroCraft

Saya telah mencari ini, jadi saya senang Anda memposting ini meskipun itu bukan yang diinginkan OP :)
dandeto

1

cmd / k cd c: \ adalah jawaban yang benar


cmd / k "cd <path di mana cmd perlu dijalankan (Mis. c: \ users \ desktop \ myFolder)> & <perintah Anda (Mis. pm2 start)>"
Techdive

1
start cmd /k "your cmd command1"
start cmd /k "your cmd command2"

Ia bekerja di Windows server2012 saat saya menggunakan perintah ini dalam satu file batch.


-8

Saya tahu prompt DOS dan cmd TIDAK SUKA spasi di nama folder. Kode Anda dimulai dengan

cd c: \ Program file \ IIS Express

dan itu mencoba pergi ke c: \ Program sebagai ganti C: \ "Program Files"

Ubah nama folder dan nama * .exe. Semoga ini membantu


Mengubah Nama Folder? Kamu pasti bercanda.
Werner Henze

1
mengoreksi setiap perintah yang menggunakan parameter dengan spasi - kecuali cd . Itu satu-satunya perintah yang saya tahu, yang benar-benar mengambil parameter dengan spasi tanpa tanda kutip.
Stephan

Ketika Anda mengubah "File program" .... xD. Saya setuju dengan Werner. Inilah yang terjadi: Aplikasi Anda yang melakukan hardcode lokasi file tidak lagi berfungsi, beberapa fungsi sistem mungkin tidak berfungsi, sistem Anda rusak
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.