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.

patel
sumber
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
Blorgbeard keluar
sumber
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>"
argentum47
sumber
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
foxidrive.dll
sumber
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"" 
Feety
sumber
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
Ethan
sumber
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

jujur
sumber
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.

VictorLee
sumber
-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

pengguna7380371
sumber
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