Daftar Isi:

Batch Lanjutan: 12 Langkah
Batch Lanjutan: 12 Langkah

Video: Batch Lanjutan: 12 Langkah

Video: Batch Lanjutan: 12 Langkah
Video: Cara Pembuatan Makanan di Pabrik - Lot dan Batch (lanjutan) 2024, Juli
Anonim

tapi tidak apa-apa, cukup gunakan perintah CD atau CHDIR untuk mengubah direktori. Tapi itu tidak terlalu penting dalam kasus ini.", "top":0.08480565371024736, "kiri":0.014285714285714285, "height":0.8586572438162544, "width":0.9357142857142857}]">

Batch Lanjutan
Batch Lanjutan
Batch Lanjutan
Batch Lanjutan
Batch Lanjutan
Batch Lanjutan

SILAKAN LANGSUNG PERTANYAAN YANG MUNGKIN ANDA PUNYA KE BLOG SAYA: https://tamsanh.com/blog/2008/07/11/batch-tutorial-3-advanced-batch/Saya tidak mengunjungi instruksi lagi, dan Anda akan mendapatkan lebih cepat respon seperti itu. Hey Guys! Tam Nguyen di sini. Sudah lama datang, tapi sekarang ada di sini! Saya mempersembahkan kepada Anda angsuran berikutnya dari Tutorial Batch saya! Anda mungkin (atau mungkin tidak) telah membaca instruksi saya yang lain: Dasar-dasar Batch Sedikit Lebih Maju. Instruksi ini meminjam beberapa elemen dari dua Instruksi pertama. Yaitu: ECHO CommandCD CommandDIR CommandJika Anda belum membaca dua lainnya, saya sarankan untuk melihat perintah-perintah tersebut dengan cepat. Saya akan menunggu di sini. Ok!Pada akhir Instruksi ini, Anda akan akrab dengan:MULAI CommandSET CommandIF CommandGOTO Commandand> dan >> ParameterDengan perintah ini, Anda akan dapat membuat file batch dinamis yang dapat berubah sesuai dengan input pengguna, dan buat dan kembangkan. Jadi mari kita buka Command Prompt yang bagus itu dan mulai! Jalankan -> cmd Atau, Anda dapat pergi ke: Start->Program Files->Accessories->Command PromptPenjelasan saya dalam instruksi ini agak panjang, jadi saya telah membagi beberapa perintah menjadi lebih dari satu halaman terutama untuk tujuan estetika; Saya suka melihat gambar sambil membaca teks tanpa harus menggulir ke atas dan ke bawah. Aturan praktis untuk melihat gambar; Biasanya setelah setiap Cuplikan Kode, ada gambarnya. Selamat menikmati!

Langkah 1: MULAI Perintah

MULAI Perintah
MULAI Perintah
MULAI Perintah
MULAI Perintah
MULAI Perintah
MULAI Perintah
MULAI Perintah
MULAI Perintah

Perintah MULAI adalah perintah kecil yang bagus untuk memulai sesuatu! Ini adalah perintah sederhana, dan akan membantu kita melakukan pemanasan sebelum kita mencapai perintah yang lebih sulit. Parameter perintah persis seperti yang Anda pikirkan.

MULAI ThingToBeStarted.exeCukup mudah

MULAI WMPlayer.exeAnda tidak hanya dapat MEMULAI.exe, Anda juga dapat mengetik situs web, dan itu akan terbuka di browser default Anda

MULAI www. Instructables.comCukup mudah, kan? Oke. Sekarang mari kita beralih ke inti Instructable: SET Command.

Langkah 2: SET Command - Teori String (1/4)

SET Perintah - Teori String (1/4)
SET Perintah - Teori String (1/4)
SET Perintah - Teori String (1/4)
SET Perintah - Teori String (1/4)

Perintah SET: Variabel Definer. Ah. Variabel. Ambrosia pengembang. Variabel adalah bit memori yang… err, variabel. Tidak ada JIKA DAN atau TIDAK tentang hal itu! (lol, maaf). Oke! Jadi bagaimana bayi ini bekerja? Sangat sederhana, parameter dari perintah SET adalah: SET VariableName=Variable ValueSET dengan sendirinya akan membuat variabel string.

SET TestVS=Uji String Variabel!Dalam hal ini, kita baru saja menyimpan nilai "Test Variable String!" ke dalam variabel TestVS. Yah itu semua kesenangan dan permainan, tetapi bagaimana kita mengambil nilai variabel? Kami menggunakan %. Cukup tambahkan % di sekitar nama variabel

ECHO %UjiVS%Oke keren, tapi apa lagi yang bisa dilakukannya?

Langkah 3: SET Command - Mr. Math (2/4)

SET Perintah - Mr. Math (2/4)
SET Perintah - Mr. Math (2/4)
SET Perintah - Mr. Math (2/4)
SET Perintah - Mr. Math (2/4)
SET Perintah - Mr. Math (2/4)
SET Perintah - Mr. Math (2/4)

Bisa buat matematika? Nah, mari kita buat batch sederhana untuk mengujinya.

@ECHO OFFSET Test=1ECHO %Test%SET Test=%Test%-1ECHO %Test%PAUSEApa yang terjadi? Itu seharusnya berhasil! Tunggu dulu… apa itu tentang perintah SET yang hanya membuat string? Ya. Perintah SET dengan sendirinya hanya akan membuat variabel string, yang berarti akan membuat interpretasi nilai yang paling literal. Itu tidak memikirkan "1 - 1" sama dengan "0", ia memikirkan "1 - 1" sama dengan "1 - 1." Jadi bagaimana kita mengubahnya? Kami ingin variabel tidak langsung disalin, tetapi Dievaluasi. Ini berarti kita ingin mengubahnya dari string menjadi ekspresi! Perubahan yang sangat mudah, cukup tambahkan /a ke perintah SET. Berikut adalah file batch sederhana untuk melihatnya beraksi, atau Anda bisa mengetikkannya ke manual Command Prompt. Saya menyarankan yang terakhir; itu jauh lebih cepat, dan kodenya tidak terlalu rumit, tetapi jika Anda benar-benar menginginkan file batch, ini dia

@ECHO OFFSET /a Tes=2+2ECHO %Test%PAUSEFantastis! Itu mengungkapkannya dengan sempurna. Sekarang kita tahu perubahan apa yang perlu dilakukan pada 'tes matematika.bat. kita

@ECHO OFFSET /a Test=1ECHO %Test%SET /a Test=%Test%-1ECHO %Test%PAUSEOke. Jadi mari kita jalankan! Hebat! Itu bekerja dengan sempurna! Tapi apa selanjutnya?

Langkah 4: SET Perintah - Input Pengguna (3/4)

SET Perintah - Masukan Pengguna (3/4)
SET Perintah - Masukan Pengguna (3/4)
SET Perintah - Masukan Pengguna (3/4)
SET Perintah - Masukan Pengguna (3/4)
SET Perintah - Masukan Pengguna (3/4)
SET Perintah - Masukan Pengguna (3/4)

SET juga memiliki kemampuan untuk meminta pengguna memasukkan input. Dengan menambahkan /p ke parameter SET, itu mengubahnya dari penyetel variabel normal menjadi penyetel variabel yang dikendalikan pengguna.

SET /p UDdefinisi=Dengan /p, program benar-benar berhenti, dan menunggu input Pengguna. Tapi tunggu, saya tidak melihat parameter /a, apakah itu berarti variabelnya hanya string? Yah, semacam itu. Parameter /p sepenuhnya meniadakan /a, dan jika Anda mencobanya, Anda hanya mendapatkan kesalahan operan Hilang. Ini berarti bahwa variabel Buatan Pengguna tidak akan dapat mengevaluasi ekspresi. Jadi apa yang dapat dilakukan? Nah, inilah trik rumit yang saya pikir dapat kita gunakan. Perintah SET tidak semua menggunakan parameter /p dan /a secara bersamaan, benar? Nah, bagaimana dengan penggunaan parameter /a dan /p secara berurutan? Ahhh… kau sepatu bot licik

@ECHO OFFECHO Kalkulator Versi 1.0ECHO. SET /p UDefine=SET /a UDefine=%UDefine%ECHO =ECHO %UDefine%ECHO. PAUSEKalkulator bagus ya sampai di sana. Jika Anda belum mengetahuinya sekarang, {{{ECHO.}}} adalah baris kosong. Bukankah itu keren-keren?

Langkah 5: SET Command - Lebih Dari Yang Terlihat (4/4)

SET Command - Lebih Dari Yang Terlihat (4/4)
SET Command - Lebih Dari Yang Terlihat (4/4)
SET Command - Lebih Dari Yang Terlihat (4/4)
SET Command - Lebih Dari Yang Terlihat (4/4)
SET Command - Lebih Dari Yang Terlihat (4/4)
SET Command - Lebih Dari Yang Terlihat (4/4)

Pada titik ini, tampaknya variabel dari perintah SET hanya baik untuk string, dan ekspresi. Tidak benar. Variabelnya, pada kenyataannya, sangat sangat fleksibel, dan tidak hanya terbatas pada ECHO. Sudahkah Anda mencoba mengetikkan variabel saja?

SET Test=Petunjuk%Tes%Sungguh kesalahan yang aneh… dikatakan bahwa perintah "Instructables" tidak dikenali, bukan berarti %Test% tidak memiliki sintaks. Jadi itu berarti DOS memperlakukan setiap variabel seperti diketik dengan tangan. Nah, bagaimana jika

SET Tes=MULAI cmd.exe%Tes%Luar biasa! Berhasil! DOS memperlakukan setiap variabel seperti yang diketik oleh pengguna, dan menjalankannya sesuai dengan itu. Berikut kode yang menarik: (Cukup Salin/Tempel; agak membosankan.

@ECHO OffSET Variable1=Variabel ECSET2=Variabel HSET3=O Variabel CSET4=ooSET Variable5=l!ECHO %Variable1%%Variable2%%Variable3%%Variable4%%Variable5%ECHO.%Variable1%%Variable2%%Variable3%%Variable4% %Variabel5%JedaBukankah itu rapi? Setiap variabel berisi dua huruf dari seluruh pesan (kecuali Variabel2), dan menempatkan variabel dalam urutan, setiap huruf bertambah, dan menyelesaikan seluruh perintah ECHO Cool! Perintah SET adalah salah satu perintah yang lebih rumit dan kuat dari kamus DOS.

Langkah 6: Perintah JIKA - Semua Orang Sama (1/2)

IF Command - Semua Orang Sama (1/2)
IF Command - Semua Orang Sama (1/2)
IF Command - Semua Orang Sama (1/2)
IF Command - Semua Orang Sama (1/2)
IF Command - Semua Orang Sama (1/2)
IF Command - Semua Orang Sama (1/2)

Operan bersyarat klasik itu. Dasar, tapi tetap kuat. Bagi mereka yang belum pernah memprogram sebelumnya, perintah IF persis seperti yang terdengar. Jika ekspresi dalam sintaks terbukti benar (atau TIDAK benar) maka urutan perintah berikutnya akan dijalankan. Baris perintah dasar berjalan seperti ini:

JIKA %variabel1%==%variabel2% ECHO Bagian ini dijalankanatau jika Anda memiliki lebih dari satu sintaks

@ECHO OFFIF %variable1%==%variable2% (ECHO Bagian ini dieksekusi. ECHO Begitu juga ini.) ELSE (ECHO Jika variable1 tidak&apost = variabel 2, ini terjadi. ECHO dan ini juga terjadi.)Catatan: Penempatan tanda kurung yang aneh bukan karena saya tidak percaya pada kode yang terorganisir, tetapi karena jika mereka tidak berada di tempat itu, seluruh cuplikan IF tidak akan berfungsi. Jadi, jika ada kesalahan dengan kode IF Anda, kemungkinan besar karena tanda kurung. Untuk menjalankan batch khusus ini, saya sebenarnya menggunakan Command Prompt itu sendiri, sehingga saya dapat mengatur variabel tanpa harus mengedit beberapa IfVariableTest.bat waktu.

Langkah 7: Perintah JIKA - Tapi Aku Lebih Besar Darimu (2/2)

IF Command - Tapi Aku Lebih Hebat darimu (2/2)
IF Command - Tapi Aku Lebih Hebat darimu (2/2)
IF Command - Tapi Aku Lebih Hebat darimu (2/2)
IF Command - Tapi Aku Lebih Hebat darimu (2/2)
IF Command - Tapi Aku Lebih Hebat darimu (2/2)
IF Command - Tapi Aku Lebih Hebat darimu (2/2)

Oke, jadi Anda punya pernyataan IF yang bagus dan semuanya, dan memeriksa apakah variabelnya sama atau tidak itu bagus dan semuanya, tetapi tidak cukup sesuai dengan tagihan. Saya ingin sesuatu terjadi jika variabel1 kurang dari variabel lain! Bagi kita programmer, saya tahu ini tampak seperti tugas yang sederhana. Lakukan saja apa yang dilakukan semua bahasa pemrograman lain! Pegang kuda Anda koboi. Tidak begitu cepat. File Batch bukan hanya bahasa pemrograman biasa Anda. Kelihatannya konyol, "" tidak berfungsi dengan file Batch.

EQU - Equal - ==NEQ - Not EqualLSS - Less ThanGTR - Greater ThanLEQ - Less Than or Equal ToGEQ - Greater Than or Equal ToLetakkan saja operan ini di tempat ==Contoh

JIKA 32 GTR 3 ECHO Ini Akan Bekerja

@ECHO OFFIF 32 GEQ 32 (ECHO 32 Lebih Besar dari, atau Sama dengan 32) ELSE (ECHO 32 pasti Sama dengan 32)PAUSEIF 32 LSS 32 (ECHO 32 Kurang dari 32? Saya rasa tidak.) ELSE (ECHO 32 adalah Tidak Kurang dari 32. Akhir cerita.)JEDA

Langkah 8: Perintah GOTO

Perintah GOTO
Perintah GOTO
Perintah GOTO
Perintah GOTO
Perintah GOTO
Perintah GOTO

Perintah GOTO. Ia melakukan persis seperti yang dikatakannya; itu PERGI KE label dalam skrip file batch. Untuk menggunakan perintah ini, Anda harus terlebih dahulu memiliki label. Label terlihat seperti ini:

:Label1Ini hanyalah titik dua sebelum rangkaian huruf dan/atau angka tanpa spasi. Perintah GOTO disusun seperti ini

Label GOTO1Semudah Itu! Kalau dipikir-pikir, saya tidak begitu yakin mengapa saya tidak memasukkan ini ke dalam Batch Slightly Advanced. Bagaimanapun, perintah ini dapat digunakan untuk mengulang file batch hanya dengan GOTO label yang mengeksekusi perintah GOTO lagi

@ECHO OFF:RepeatMeECHO Ini akan diulang kecuali Anda menekan "CTRL-C"GOTO RepeatMeFile batch berbicara kebenaran, omong-omong. CTRL-C adalah Jeda dan Prompt untuk Pemutusan universal. CTRL-S hanyalah Jeda. Tetapi Menutup jendela juga berfungsi dengan baik. GOTO dapat melewati, atau mengurutkan ulang kode Anda juga

GOTO TurnEoffGOTO MultipleGotoECHO ECHO ini akan dilewati.:MultipleGotoGOTO 3:ENDPAUSEEXIT:1ECHO EndGOTO END:3ECHO Ini akan ditampilkan terlebih dahuluGOTO 2:TurnEOff@ECHO OFFGOTO MultipleGoto:2ECHO Ini adalah yang kedua, meskipun ini&apos terakhir dalam kode. GOTO 1Kode di atas disusun secara membingungkan dengan tujuan untuk menekankan kemampuan GOTO untuk melompat-lompat dalam kode.

Langkah 9: > Parameter (1/2)

Contoh Implementasi
Contoh Implementasi
Contoh Implementasi
Contoh Implementasi
Contoh Implementasi
Contoh Implementasi
Kesimpulan: Catatan Akhir
Kesimpulan: Catatan Akhir

Perintah>Nama FileOk, jadi katakanlah kita berada di direktori tertentu. Kami kemudian menggunakan Perintah DIR, yang jika Anda membaca Dasar-dasar Batch, Anda akan mengetahui bahwa Anda menunjukkan isi direktori Anda saat ini.

C:\Users\Neo\>DIRBiasanya akan mengeluarkan

Volume di drive C adalah HP Volume Serial Number adalah BC7E-E26C Direktori C:\Users\Neo2007-30-06 11:14 AM.2007-30-06 11:14 AM..2007-17-03 18:41 PM.idlerc2007-19-02 03:14 PM Kontak 2007-06-19 22:44 Desktop 2007-06-29 08:47 Dokumen 2007-19-06 10:35 Unduhan 2007-02-19 15:14 Favorit 19/02/ 2007 15:14 Tautan2007-12-05 16:01 Musik2007-06-30 01:20 Gambar2007-07-04 15:08 Game yang Disimpan 2007-02-19 15:14 Penelusuran 2007-01-01 07:23 PM 242, 947 Test Record.wma2007-19-06 10:39 Video2007-18-06 09:57 1, 324, 574 wp_screenprint_mc.pdf2007-18-06 09:59 73, 996, 533 wp_tshirt_full.mp4 4 File 75, 564, 054 byte 14 Dir 132, 927, 537, 152 byte gratisTetapi, jika kita menambahkan > dan ke dalamnya

C:\Users\Neo\DIR>DIRContents.txtKami tidak mendapatkan output, tetapi sebaliknya, kami mendapatkan File Teks baru bernama DIRContents.txt yang memiliki Output di dalamnya! Keren! Tapi tunggu, ada masalah! Saya ingin memiliki beberapa output dalam file yang sama, tetapi > saya terus menimpanya, dan tidak menambahkannya! Apa yang saya lakukan?

Langkah 10: >> Parameter (2/2)

DIR>>DIRContents.txtRapi! Bekerja dengan Sempurna! Jadi tunggu. Apakah itu berarti saya dapat menulis apa pun yang saya inginkan ke dalam file teks? Saya ingin mencobanya

Batch Luar Biasa>Luar Biasa.txtApa? Mengapa itu tidak berhasil? Itu karena parameter hanya menulis output dari Perintah Sah, bukan hanya apa pun yang Anda ketik. Tapi, ini adalah masalah yang diselesaikan dengan mudah. Ingat, parameter merekam Output of Commands. Perintah apa yang outputnya bisa kita kendalikan? Benar! Komando ECHO

ECHO Batch Is Awesome>Awesome.txtECHO Saya&aposm sangat senang mengetahuinya.>>Awesome.txtYa! Ingat. >> menambahkan Output ke baris file berikutnya.

Langkah 11: Contoh Implementasi

Oke. Jadi mari kita kumpulkan semuanya! Berikut adalah beberapa contoh kode yang saya buat yang menggunakan perintah yang saya tunjukkan kepada Anda dalam instruksi ini. Kode ini akan menambahkan 1 ke variabel secara terus-menerus, dan menampilkan hasilnya tanpa batas.

@ECHO OFFSET /a num=1:RepeatECHO %num%SET /a num=%num%+1GOTO RepeatKode ini akan memulai CMD.exe 5 kali

@ECHO OFFSET /a RepeatNum=5:OpenIF %RepeatNum%==0 GOTO EndSTART CMD.exeSET /a RepeatNum=%RepeatNum%-1GOTO Open:EndKode ini akan membuat file batch di C:\Users\Neo, dan akan menjalankannya

@ECHO OFFCHDIR C:\Users\NeoECHO @ECHO OFF>Halo.batECHO ECHO Halo!>>Halo.batECHO ECHO I&aposm di Drive C Anda!>>Halo.batECHO PAUSE>>Halo.batC:\Users\Neo\Halo. kelelawarJedaIni adalah kumpulan permainan kecil. Anda harus menebak nomornya

@ECHO OFFSET /a GuessNum=0SET /a Answer=%RANDOM%ECHO Tebak Angka apa yang saya&aposm pikirkan.:RetrySET /p Guess=IF %Guess% LSS %Answer% ECHO Nomor Saya Lebih Tinggi. IF %Guess% GTR %Answer % ECHO Nomor Saya Lebih Rendah. JIKA %Tebak%==%Jawaban% GOTO ENDECHO. SET /a GuessNum=%GuessNum%+1GOTO Coba Lagi:ENDECHO Anda Benar! Jawabannya adalah %Answer%ECHO Butuh %GuessNum% Guesses. ECHO. PAUSEDan yang ini, saya sangat suka. Namun, jika Anda tidak berhati-hati, ini bisa lepas kendali dengan cukup cepat, tergantung pada kemampuan komputer Anda. Apa yang dilakukan file ini adalah membuat file teks bernomor tanpa batas di direktori yang disebut lolnumbers. Masing-masing file teks ini berisi DIR dari direktori lolnumbers. Masalahnya, direktori terus-menerus semakin penuh dengan file teks, sehingga setiap file teks berturut-turut lebih besar dari yang terakhir. Hasil dari ini adalah folder yang ukuran totalnya semakin besar setiap detik

@ECHO OFFSET /a num=1MKDIR lolnumbersCD lolnumbers:RestartDIR>%num%.txtSET /a num+=1GOTO RestartIni adalah kode yang cukup mendasar. Bereksperimenlah dengan mereka sepuasnya.

Langkah 12: Kesimpulan: Catatan Akhir

Fiuh. Kami membahas banyak hal dalam instruksi ini. Yang ini, infact, 3 kali lebih lama dari yang terakhir saya. Saya harap Anda akan menikmatinya! Hanya beberapa pengingat sebelum saya pergi. Ingat: Saat MENYESUAIKAN variabel, Jangan pernah memberi spasi di antara variabel dan nilainya. YA:

SET variabel1=NilaiRuang ekstra akan menyebabkan variabel Anda menjadi kosong. TIDAK

SET variabel1 = NilaiJuga, beberapa IF. Ingatlah untuk memformat tanda kurung dengan benar: YA

JIKA 1==1 (ECHO Satu Sama dengan Satu!) ELSE (ECHO Ada yang salah dengan program ini.)TIDAK

JIKA 1==1(ECHO Satu Sama dengan Satu!)ELSE(ECHO Ada yang salah dengan program ini.)Juga, ada variabel bawaan juga

%CD%%DATE%%TIME%%RANDOM%%CD% Memperluas ke direktori saat ini. Pada dasarnya, jalur di belakang >%DATE% dan %TIME% pertama adalah Tanggal dan Waktu.%RANDOM% memberikan angka acak antara 0 dan 32767. Rentangnya tidak dapat diubah, menurut saya. Dan pada dasarnya hanya itu! Saya harap Anda menikmati instruksi ini, saya bekerja sangat keras untuk itu. Semoga, ini akan menggantikan Absen 10 Bulan. Sekarang kabar buruknya. Saya akan mengalami sedikit kesulitan menjawab pertanyaan apa pun dalam beberapa bulan ke depan, karena saya akan berada di luar negeri. Tetapi jika Anda memiliki pertanyaan, tinggalkan komentar siapa pun. Jika saya mendapatkan akses ke komputer, saya pasti akan menjawab, tetapi saya rasa itu tidak perlu; Instructables adalah komunitas yang ramah, dan saya yakin seseorang di luar sana akan membantu Anda dalam kesulitan Anda. Selamat Berkumpul!

Direkomendasikan: