สารบัญ:

แบทช์ขั้นสูง: 12 ขั้นตอน
แบทช์ขั้นสูง: 12 ขั้นตอน

วีดีโอ: แบทช์ขั้นสูง: 12 ขั้นตอน

วีดีโอ: แบทช์ขั้นสูง: 12 ขั้นตอน
วีดีโอ: วิธีทำชาร์จแบต 12 โวลท์แบบง่ายๆมีไฟขึ้นแจ้งบอกสถานะชาร์จเข้า 2024, กรกฎาคม
Anonim

แต่ไม่เป็นไร เพียงใช้คำสั่ง CD หรือ CHDIR เพื่อเปลี่ยนไดเรกทอรี แต่ในกรณีนี้ไม่สำคัญ", "top":0.08480565371024736, "left":0.014285714285714285, "height":0.8586572438162544, "width":0.9357142857142857}]">

แบทช์ขั้นสูง
แบทช์ขั้นสูง
แบทช์ขั้นสูง
แบทช์ขั้นสูง
แบทช์ขั้นสูง
แบทช์ขั้นสูง

กรุณาตรงคำถามใด ๆ ที่คุณอาจต้องไปที่บล็อกของฉัน:https://tamsanh.com/blog/2008/07/11/batch-tutorial-3-advanced-batch/ฉันไม่เยี่ยมชมคำแนะนำอีกต่อไปและคุณจะได้รับเร็วขึ้น ตอบกลับไปแบบนั้น เฮ้ พวก! ตั้ม เหงียน ครับ ห่างหายไปนาน แต่ตอนนี้มาแล้ว! ฉันขอนำเสนอภาคต่อของ Batch Tutorials ของฉันแก่คุณ! คุณอาจ (หรืออาจไม่เคย) ได้อ่านคำแนะนำอื่นๆ ของฉันแล้ว: พื้นฐานของ BatchSlightly More Advanded BatchThis Instructable จะยืมองค์ประกอบบางส่วนจาก Instructables สองอันแรก กล่าวคือ:คำสั่ง ECHO คำสั่งซีดีคำสั่ง DIRหากคุณยังไม่ได้อ่านอีกสองคำสั่งที่เหลือ ฉันขอแนะนำให้ดูคำสั่งเหล่านั้นอย่างรวดเร็ว ฉันจะรอที่นี่ ตกลง! ในตอนท้ายของคำแนะนำนี้ คุณจะสนิทสนมกับ:START CommandSET CommandIF CommandGOTO Commandand> and >> Parametersด้วยคำสั่งเหล่านี้ คุณจะสามารถสร้างไฟล์แบตช์แบบไดนามิกซึ่งสามารถเปลี่ยนแปลงได้ตามอินพุตของผู้ใช้ และสร้างและขยาย เรามาเปิด 'พรอมต์คำสั่ง ' ที่ดีและเริ่มต้นกันเถอะ! เรียกใช้ -> cmd อีกทางหนึ่ง คุณสามารถไปที่:Start->Program Files->Accessories->Command PromptMy คำอธิบายในคำสั่งนี้มีความยาวเล็กน้อย ดังนั้นฉันจึงแยกคำสั่งออกเป็นมากกว่าหนึ่งหน้าเพื่อวัตถุประสงค์ด้านสุนทรียศาสตร์เป็นหลัก ฉันชอบดูภาพขณะอ่านข้อความโดยไม่ต้องเลื่อนขึ้นและลง หลักการง่ายๆ สำหรับการดูรูปภาพ โดยปกติหลังจากทุก Code Snippet จะมีรูปภาพ ขอให้สนุก!

ขั้นตอนที่ 1: เริ่มคำสั่ง

เริ่มคำสั่ง
เริ่มคำสั่ง
เริ่มคำสั่ง
เริ่มคำสั่ง
เริ่มคำสั่ง
เริ่มคำสั่ง
เริ่มคำสั่ง
เริ่มคำสั่ง

คำสั่ง START เป็นคำสั่งเล็กๆ น้อยๆ ที่ดีที่จะเริ่มต้นสิ่งต่างๆ! เป็นคำสั่งง่ายๆ และจะช่วยให้เราอบอุ่นร่างกายก่อนที่เราจะไปถึงคำสั่งที่ยากขึ้น พารามิเตอร์ของคำสั่งนั้นตรงกับที่คุณคิด

START ThingToBeStarted.exeค่อนข้างง่าย

เริ่ม WMPlayer.exeไม่เพียงแต่คุณสามารถ START.exe เท่านั้น คุณยังสามารถพิมพ์เว็บไซต์เข้าไปได้ และเว็บไซต์จะเปิดขึ้นในเบราว์เซอร์เริ่มต้นของคุณ

เริ่ม www. Instructables.comค่อนข้างง่ายใช่มั้ย ตกลง. ทีนี้มาดูเนื้อจริงของคำสั่ง Instructable: SET Command

ขั้นตอนที่ 2: คำสั่ง SET - ทฤษฎีสตริง (1/4)

คำสั่ง SET - ทฤษฎีสตริง (1/4)
คำสั่ง SET - ทฤษฎีสตริง (1/4)
คำสั่ง SET - ทฤษฎีสตริง (1/4)
คำสั่ง SET - ทฤษฎีสตริง (1/4)

คำสั่ง SET: The Variable Definer. Ah ตัวแปร ความสับสนของนักพัฒนา ตัวแปรคือบิตของหน่วยความจำซึ่งก็คือ… เอ่อ ตัวแปร ไม่มี IFs และหรือไม่เกี่ยวกับเรื่องนี้! (ฮ่า ๆ ขอโทษ) ตกลง! ทารกนี้ทำงานอย่างไร พูดง่ายๆ เลย พารามิเตอร์ของคำสั่ง SET คือ:SET VariableName=Variable ValueSET โดยตัวมันเองจะสร้างตัวแปรสตริง

SET TestVS=ทดสอบสตริงตัวแปร!ในกรณีนี้ เราเพิ่งเก็บค่า "Test Variable String!" ลงในตัวแปร TestVS ทั้งหมดนั้นสนุกและเป็นเกม แต่เราจะดึงค่าตัวแปรได้อย่างไร? เราใช้ %. Just เพิ่ม % รอบชื่อตัวแปร

เสียงสะท้อน% ทดสอบVS%โอเค เจ๋ง แต่มันทำอะไรได้อีกล่ะ

ขั้นตอนที่ 3: คำสั่ง SET - Mr. Math (2/4)

คำสั่ง ตลท. - คุณคณิต (2/4)
คำสั่ง ตลท. - คุณคณิต (2/4)
คำสั่ง ตลท. - คุณคณิต (2/4)
คำสั่ง ตลท. - คุณคณิต (2/4)
คำสั่ง ตลท. - คุณคณิต (2/4)
คำสั่ง ตลท. - คุณคณิต (2/4)

มันทำคณิตศาสตร์ได้หรือไม่? เรามาทำชุดง่ายๆ เพื่อทดสอบกัน

@ECHO OFFSET Test=1ECHO %Test%SET ทดสอบ=%Test%-1ECHO %Test%PAUSEอ่า เกิดอะไรขึ้น? นั่นน่าจะได้ผล! รอสักครู่… คำสั่ง SET ที่สร้างสตริงเท่านั้นคืออะไรใช่ คำสั่ง SET โดยตัวมันเองจะสร้างตัวแปรสตริงเท่านั้น ซึ่งหมายความว่าจะสร้างการตีความค่าตามตัวอักษรมากที่สุด ไม่คิดว่า "1 - 1" เท่ากับ "0" แต่คิดว่า "1 - 1" เท่ากับ "1 - 1" แล้วเราจะเปลี่ยนแปลงได้อย่างไร เราต้องการไม่ให้ตัวแปรถูกคัดลอกโดยตรง แต่ถูกประเมินผล ซึ่งหมายความว่าเราต้องการเปลี่ยนจากสตริงเป็นนิพจน์! การเปลี่ยนแปลงที่ง่ายมาก เพียงเพิ่ม /a ลงในคำสั่ง SET นี่คือแบตช์ไฟล์ง่ายๆ เพื่อดูการทำงาน หรือคุณสามารถพิมพ์ลงในคู่มือพร้อมรับคำสั่ง ฉันแนะนำอย่างหลัง มันเร็วกว่ามากและโค้ดก็ไม่ซับซ้อนเกินไป แต่ถ้าคุณต้องการไฟล์แบตช์จริงๆ นี่แหละ

@ECHO OFFSET /a การทดสอบ=2+2ECHO %Test%PAUSEมหัศจรรย์! มันแสดงออกได้อย่างสมบูรณ์แบบ ตอนนี้เรารู้แล้วว่าต้องเปลี่ยนแปลงอะไรใน 'math test.bat. ของเรา

@ECHO OFFSET /a การทดสอบ=1ECHO %Test%SET /a การทดสอบ=%Test%-1ECHO %Test%PAUSEตกลง. มาเริ่มกันเลย!เยี่ยมมาก! มันทำงานได้อย่างสมบูรณ์แบบ! แต่จะทำอย่างไรต่อไป?

ขั้นตอนที่ 4: คำสั่ง SET - อินพุตของผู้ใช้ (3/4)

คำสั่ง SET - อินพุตผู้ใช้ (3/4)
คำสั่ง SET - อินพุตผู้ใช้ (3/4)
คำสั่ง SET - อินพุตผู้ใช้ (3/4)
คำสั่ง SET - อินพุตผู้ใช้ (3/4)
คำสั่ง SET - อินพุตผู้ใช้ (3/4)
คำสั่ง SET - อินพุตผู้ใช้ (3/4)

SET ยังมีความสามารถในการแจ้งให้ผู้ใช้ป้อนข้อมูลด้วย โดยการเพิ่ม /p ให้กับพารามิเตอร์ SET มันจะแปลงจากตัวตั้งค่าตัวแปรปกติไปเป็นตัวตั้งค่าตัวแปรที่ควบคุมโดยผู้ใช้

SET /p UDefine=ด้วย /p โปรแกรมจะหยุดชั่วคราวจริง ๆ และรอการป้อนข้อมูลของผู้ใช้แต่เดี๋ยวก่อน ฉันไม่เห็นพารามิเตอร์ /a นั่นหมายความว่าตัวแปรนั้นเป็นสตริงเท่านั้นใช่หรือไม่ /p ของพารามิเตอร์จะลบล้าง /a โดยสิ้นเชิง และหากคุณพยายามทำ คุณจะได้รับข้อผิดพลาดตัวถูกดำเนินการที่หายไป ซึ่งหมายความว่าตัวแปร User Defined จะไม่สามารถประเมินนิพจน์ได้ แล้วเราจะทำอะไรได้บ้าง นี่คือเคล็ดลับที่คิดว่าน่าจะใช้ได้ คำสั่ง SET ไม่ได้ใช้พารามิเตอร์ /p และ /a พร้อมกันทั้งหมดใช่ไหม แล้วการใช้พารามิเตอร์ /a และ /p ตามลำดับคืออะไร? อ่า… รองเท้าเจ้าเล่ห์

@ECHO OFFECHO เครื่องคิดเลขเวอร์ชัน 1.0ECHO. SET /p UDefine=SET /a UDefine=%UDefine%ECHO =ECHO %UDefine%ECHO. PAUSEเครื่องคิดเลขดีๆ มาแล้วจ้า หากคุณยังไม่ได้คิดออกตอนนี้ {{{ECHO.}}} เป็นบรรทัดว่าง เจ๋งไปเลยใช่ไหม

ขั้นตอนที่ 5: คำสั่ง SET - มากกว่าที่ตาเห็น (4/4)

คำสั่ง ตลท. - มากกว่าที่เห็น (4/4)
คำสั่ง ตลท. - มากกว่าที่เห็น (4/4)
คำสั่ง ตลท. - มากกว่าที่เห็น (4/4)
คำสั่ง ตลท. - มากกว่าที่เห็น (4/4)
คำสั่ง ตลท. - มากกว่าที่เห็น (4/4)
คำสั่ง ตลท. - มากกว่าที่เห็น (4/4)

ณ จุดนี้ อาจดูเหมือนว่าตัวแปรของคำสั่ง SET นั้นดีสำหรับสตริงและนิพจน์เท่านั้น ไม่จริง. อันที่จริง ตัวแปรมีความยืดหยุ่นสูงมาก และไม่ได้จำกัดแค่ ECHO คุณลองพิมพ์ตัวแปรด้วยตัวเองแล้วหรือยัง?

การทดสอบ SET=Instructables%Test%ช่างเป็นข้อผิดพลาดที่แปลกประหลาด… มันบอกว่าคำสั่ง "Instructables" ไม่เป็นที่รู้จัก ไม่ใช่ว่า %Test% ไม่มีไวยากรณ์ นั่นหมายความว่า DOS ปฏิบัติต่อแต่ละตัวแปรเหมือนกับที่พิมพ์ด้วยมือ แล้วถ้า

SET ทดสอบ=เริ่ม cmd.exe%Test%สุดยอด! มันได้ผล!DOS ปฏิบัติต่อแต่ละตัวแปรเหมือนกับที่ผู้ใช้พิมพ์ และรันตามนั้น นี่คือโค้ดที่น่าสนใจ: (แค่คัดลอก/วาง มันค่อนข้างน่าเบื่อ

@ECHO OffSET Variable1=ECSET Variable2=HSET Variable3=O CSET Variable4=ooSET ตัวแปร5=l!ECHO %Variable1%%Variable2%%Variable3%%Variable4%%Variable5%ECHO.%Variable1%%Variable2%%Variable3%%Variable4% %ตัวแปร5%หยุดชั่วคราวมันไม่เรียบร้อยเหรอ? ตัวแปรแต่ละตัวประกอบด้วยตัวอักษรสองตัวของข้อความทั้งหมด (ยกเว้น Variable2) และวางตัวแปรตามลำดับ โดยแต่ละตัวอักษรจะรวมกัน และจบคำสั่งทั้งหมดของ ECHO Cool! คำสั่ง SET เป็นหนึ่งในคำสั่งที่ซับซ้อนและมีประสิทธิภาพมากขึ้นของ พจนานุกรมดอส

ขั้นตอนที่ 6: IF Command - ทุกคนเท่าเทียมกัน (1/2)

IF Command - ทุกคนเท่าเทียมกัน (1/2)
IF Command - ทุกคนเท่าเทียมกัน (1/2)
IF Command - ทุกคนเท่าเทียมกัน (1/2)
IF Command - ทุกคนเท่าเทียมกัน (1/2)
IF Command - ทุกคนเท่าเทียมกัน (1/2)
IF Command - ทุกคนเท่าเทียมกัน (1/2)

ตัวถูกดำเนินการตามเงื่อนไขแบบคลาสสิกนั้น พื้นฐานแต่ทรงพลัง สำหรับผู้ที่ไม่เคยตั้งโปรแกรมมาก่อน คำสั่ง IF ก็เหมือนกับเสียงของมัน หากนิพจน์ในไวยากรณ์พิสูจน์ได้ว่าเป็นจริง (หรือไม่จริง) ลำดับของคำสั่งถัดไปก็จะดำเนินการ บรรทัดคำสั่งพื้นฐานจะเป็นดังนี้:

IF %variable1%==%variable2% ECHO ส่วนนี้ถูกดำเนินการหรือถ้าคุณมีมากกว่าหนึ่ง syntax

@ECHO OFFIF %variable1%==%variable2% (ECHO ดำเนินการส่วนนี้แล้ว ECHO เป็นแบบนี้) ELSE (ECHO หากตัวแปร 1 ไม่&apost = ตัวแปร 2 สิ่งนี้จะเกิดขึ้น ECHO และสิ่งนี้ก็เกิดขึ้นเช่นกัน)หมายเหตุ: การวางวงเล็บที่แปลกประหลาดไม่ใช่เพราะฉันไม่เชื่อในโค้ดที่จัดระเบียบ แต่เนื่องจากถ้าไม่ได้อยู่ในที่เหล่านั้น ข้อมูลโค้ด IF ทั้งหมดจะไม่ทำงาน ดังนั้น หากมีข้อผิดพลาดใด ๆ กับรหัส IF ของคุณ เป็นไปได้มากว่าเป็นเพราะวงเล็บ ในการเรียกใช้ชุดคำสั่งนี้ จริง ๆ แล้วฉันใช้ Command Prompt เอง เพื่อที่ฉันจะได้ตั้งค่าตัวแปรโดยไม่ต้องแก้ไข IfVariableTest.bat หลายตัว ครั้ง

ขั้นตอนที่ 7: IF Command - แต่ฉันยิ่งใหญ่กว่าคุณ (2/2)

IF Command - แต่ฉันยิ่งใหญ่กว่าคุณ (2/2)
IF Command - แต่ฉันยิ่งใหญ่กว่าคุณ (2/2)
IF Command - แต่ฉันยิ่งใหญ่กว่าคุณ (2/2)
IF Command - แต่ฉันยิ่งใหญ่กว่าคุณ (2/2)
IF Command - แต่ฉันยิ่งใหญ่กว่าคุณ (2/2)
IF Command - แต่ฉันยิ่งใหญ่กว่าคุณ (2/2)

ตกลง ดังนั้น คุณมีคำสั่ง IF ที่ดีและทั้งหมด และการตรวจสอบว่าตัวแปรมีค่าเท่ากันหรือไม่นั้นดีและทั้งหมด แต่ไม่เหมาะกับการเรียกเก็บเงิน ฉันต้องการสิ่งที่เกิดขึ้นถ้าตัวแปร1 น้อยกว่าตัวแปรอื่น!สำหรับพวกเราโปรแกรมเมอร์ ฉันรู้ว่านี่ดูเหมือนเป็นงานง่าย ทำในสิ่งที่ภาษาโปรแกรมอื่น ๆ ทำ! ถือคาวบอยม้าของคุณไว้ ไม่เร็วนัก ไฟล์แบทช์ไม่ได้เป็นเพียงภาษาโปรแกรมปกติของคุณ มันดูงี่เง่า "" ใช้กับไฟล์แบทช์ไม่ได้

EQU - เท่ากัน - ==NEQ - ไม่เท่ากันLSS - น้อยกว่า ThanGTR - มากกว่า LEQ - น้อยกว่าหรือเท่ากับ ToGEQ - มากกว่าหรือเท่ากับเพียงแค่ใส่ตัวถูกดำเนินการเหล่านี้แทน ==Example

IF 32 GTR 3 ECHO สิ่งนี้จะได้ผล

@ECHO OFFIF 32 GEQ 32 (ECHO 32 มากกว่าหรือเท่ากับ 32) ELSE (ECHO 32 เท่ากับ 32 แน่นอน) PAUSEIF 32 LSS 32 (ECHO 32 น้อยกว่า 32 ฉันคิดว่าไม่) ELSE (ECHO 32 คือ ไม่น้อยกว่า 32. จบเรื่อง) PAUSE

ขั้นตอนที่ 8: คำสั่ง GOTO

คำสั่ง GOTO
คำสั่ง GOTO
คำสั่ง GOTO
คำสั่ง GOTO
คำสั่ง GOTO
คำสั่ง GOTO

คำสั่ง GOTO มันทำในสิ่งที่พูด ไปที่ป้ายกำกับในสคริปต์ไฟล์แบตช์ ในการใช้คำสั่งนี้ คุณต้องมีป้ายกำกับก่อน ป้ายกำกับมีลักษณะดังนี้:

:Label1เป็นเพียงเครื่องหมายโคลอนก่อนชุดตัวอักษรและ/หรือตัวเลขแบบไม่เว้นวรรค คำสั่ง GOTO มีโครงสร้างดังนี้

GOTO Label1มันง่ายมาก! ลองคิดดูแล้ว ฉันไม่แน่ใจจริงๆ ว่าทำไมฉันไม่ได้ใส่สิ่งนี้ใน Slightly Advanced Batch ในกรณีใด ๆ คำสั่งนี้สามารถใช้เพื่อทำซ้ำไฟล์แบตช์โดยเพียงแค่ GOTO ป้ายกำกับที่รันคำสั่ง GOTO อีกครั้ง

@ECHO OFF:RepeatMeECHO สิ่งนี้จะถูกทำซ้ำเว้นแต่คุณจะกด "CTRL-C"GOTO RepeatMeไฟล์แบตช์พูดความจริง CTRL-C คือ Universal Pause และ Prompt for Termination CTRL-S เป็นเพียงการหยุดชั่วคราว แต่การปิดหน้าต่างก็ใช้ได้เช่นกัน GOTO สามารถข้ามหรือจัดลำดับรหัสของคุณใหม่ได้เช่นกัน

GOTO TurnEOffGOTO MultipleGotoECHO ECHO นี้กำลังจะถูกข้ามไป:MultipleGotoGOTO 3:ENDPAUSEEXIT:1ECHO The EndGOTO END:3ECHO สิ่งนี้จะแสดงก่อนGOTO 2:TurnEOff@ECHO OFFGOTO MultipleGoto:2ECHO นี่เป็นครั้งที่สอง แม้ว่าจะอยู่ในโค้ดก็ตามGOTO 1โค้ดด้านบนมีโครงสร้างที่สับสนโดยมีวัตถุประสงค์เพื่อเน้นย้ำความสามารถของ GOTO ในการข้ามไปมาในโค้ด

ขั้นตอนที่ 9: > พารามิเตอร์ (1/2)

ตัวอย่างการใช้งาน
ตัวอย่างการใช้งาน
ตัวอย่างการใช้งาน
ตัวอย่างการใช้งาน
ตัวอย่างการใช้งาน
ตัวอย่างการใช้งาน
บทสรุป: Final Notes
บทสรุป: Final Notes

คำสั่ง>ชื่อไฟล์ตกลง สมมติว่าเราอยู่ในไดเรกทอรีบางแห่ง จากนั้นเราจะใช้คำสั่ง DIR ซึ่งถ้าคุณอ่าน Basics of Batch คุณจะรู้ว่าแสดงเนื้อหาของไดเร็กทอรีปัจจุบันของคุณ

C:\Users\Neo\>DIRปกติจะส่งออก

ปริมาณในไดรฟ์ C คือ HP Volume Serial Number คือ BC7E-E26C Directory ของ 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 Contacts2007-19-06 22:44 PM Desktop2007-29-06 08:47 AM Documents2007-19-06 10:35 AM Downloads2007-19-02 03:14 PM Favorites02/19/ 2007 03:14 PM ลิงค์ 2007-12-05 04:01 PM เพลง2007-30-06 01:20 AM รูปภาพ2007-07-04 03:08 PM เกมที่บันทึกไว้2007-19-02 03:14 PM ค้นหา 2007-01-03 07:23 PM 242, 947 Test Record.wma2007-19-06 10:39 น. วิดีโอ2007-18-06 09:57 น. 1, 324, 574 wp_screenprint_mc.pdf2007-18-06 09:59 น. 73, 996, 533 wp_tshirt_full.mp4 4 ไฟล์ 75, 564, 054 ไบต์ 14 Dir (s) 132, 927, 537, 152 ไบต์ฟรีแต่ถ้าเราเพิ่ม > และมัน

C:\Users\Neo\DIR>DIRContents.txtเราไม่ได้รับผลลัพธ์ แต่เราได้รับไฟล์ข้อความใหม่เอี่ยมที่ชื่อ DIRContents.txt ซึ่งมีเอาต์พุตอยู่ในนั้น! เจ๋ง!แต่เดี๋ยวก่อน มีปัญหา! ฉันต้องการมีหลายเอาต์พุตในไฟล์เดียวกัน แต่ > my > ยังคงเขียนทับมันต่อไป และไม่เพิ่มเข้าไป! ฉันจะทำอย่างไร?

ขั้นตอนที่ 10: >> พารามิเตอร์ (2/2)

DIR>>DIRContents.txtประณีต! ทำงานได้อย่างสมบูรณ์แบบ! ดังนั้นรอ หมายความว่าฉันสามารถเขียนอะไรก็ได้ที่ฉันต้องการลงในไฟล์ข้อความหรือไม่? อยากลอง

Batch Is Awesome>Awesome.txtอะไร? ทำไมมันไม่ได้ผล? เป็นเพราะพารามิเตอร์เขียนเฉพาะเอาต์พุตของ Legitimate Commands ไม่ใช่เฉพาะสิ่งที่คุณพิมพ์ แต่นี่เป็นปัญหาที่แก้ไขได้ง่ายๆ โปรดจำไว้ว่า พารามิเตอร์จะบันทึกผลลัพธ์ของคำสั่ง คำสั่งใดมีผลลัพธ์ที่เราควบคุมได้ใช่ไหม! คำสั่ง ECHO

ECHO Batch Is Awesome>Awesome.txtECHO ฉันดีใจมากที่รู้ >>Awesome.txtเย้! จดจำ. >> เพิ่มเอาต์พุตไปยังบรรทัดถัดไปของไฟล์

ขั้นตอนที่ 11: ตัวอย่างการใช้งาน

ตกลง. เลยเอามารวมกันเลย! นี่คือตัวอย่างโค้ดบางส่วนที่ฉันสร้างโดยใช้คำสั่งที่ฉันแสดงให้คุณเห็นในคำแนะนำนี้ รหัสนี้จะเพิ่ม 1 ให้กับตัวแปรอย่างต่อเนื่องและส่งออกผลลัพธ์อย่างไม่มีกำหนด

@ECHO OFFSET /a num=1:RepeatECHO %num%SET /a num=%num%+1GOTO ทำซ้ำรหัสนี้จะเริ่มทำงาน CMD.exe 5 ครั้ง

@ECHO OFFSET /a RepeatNum=5:OpenIF %RepeatNum%==0 GOTO EndSTART CMD.exeSET /a RepeatNum=%RepeatNum%-1GOTO เปิด:สิ้นสุดรหัสนี้จะสร้างไฟล์แบตช์ใน C:\Users\Neo และจะเรียกใช้

@ECHO OFFCHDIR C:\Users\NeoECHO @ECHO OFF>Hello.batECHO ECHO สวัสดี!>>Hello.batECHO ECHO ฉัน&aposm ในไดรฟ์ C ของคุณ!>>Hello.batECHO PAUSE>>Hello.batC:\Users\Neo\Hello batPauseนี่เป็นชุดเกมเล็ก ๆ คุณต้องเดาตัวเลข

@ECHO OFFSET /a GuessNum=0SET /a Answer=%RANDOM%ECHO เดาว่าฉันกำลังคิดอะไรอยู่:RetrySET /p Guess=IF %Guess% LSS %Answer% ECHO หมายเลขของฉันสูงกว่า IF %Guess% GTR %Answer % ECHO หมายเลขของฉันต่ำกว่า ถ้า %Guess%==%Answer% GOTO ENDECHO. SET /a GuessNum=%GuessNum%+1GOTO ลองอีกครั้ง:ENDECHO คุณถูกต้อง! คำตอบคือ %Answer%ECHO เอา %GuessNum% Guesses. ECHO. PAUSEและอันนี้ชอบมาก ถ้าคุณไม่ระวัง มันอาจจะหลุดมือไปอย่างรวดเร็ว ขึ้นอยู่กับความสามารถของคอมพิวเตอร์ของคุณ สิ่งที่ไฟล์นี้ทำคือสร้างไฟล์ข้อความที่มีตัวเลขอย่างไม่มีกำหนดในไดเร็กทอรีชื่อ lolnumbers ไฟล์ข้อความเหล่านี้แต่ละไฟล์มี DIR ของไดเร็กทอรี lolnumbers ประเด็นคือ ไดเร็กทอรีมีไฟล์ข้อความอยู่เต็มและเต็มมากขึ้นเรื่อยๆ ดังนั้นไฟล์ข้อความที่ต่อเนื่องกันแต่ละไฟล์จึงมีขนาดใหญ่กว่าไฟล์ล่าสุด ผลลัพธ์ที่ได้คือโฟลเดอร์ที่มีขนาดโดยรวมใหญ่ขึ้นเรื่อยๆ ทุกวินาที

@ECHO OFFSET /a num=1MKDIR lolnumbersCD lolnumbers:RestartDIR>%num%.txtSET /a num+=1GOTO เริ่มใหม่นี่เป็นรหัสพื้นฐานที่ค่อนข้างดี ทดลองกับพวกเขาจนพอใจ

ขั้นตอนที่ 12: บทสรุป: Final Notes

วุ้ย. เราครอบคลุมมากในคำแนะนำนี้ อันนี้เป็น infact นานกว่าของฉัน 3 เท่า ฉันหวังว่าคุณจะสนุกกับมัน! เตือนความจำสองสามอย่างก่อนฉันไป จำไว้ว่า: เมื่อตั้งค่าตัวแปร อย่าเว้นวรรคระหว่างตัวแปรกับค่าของมัน ใช่:

SET ตัวแปร1=ค่าช่องว่างเพิ่มเติมจะทำให้ตัวแปรของคุณว่างเปล่าไม่มี

SET ตัวแปร1 = ค่านอกจากนี้ IF หลายรายการ อย่าลืมจัดรูปแบบวงเล็บให้ถูกต้อง:YES

IF 1==1 (ECHO One Equals One!) ELSE (ECHO มีบางอย่างผิดปกติกับโปรแกรมนี้)ไม่

IF 1==1(ECHO One Equals One!)ELSE(ECHO มีบางอย่างผิดปกติกับโปรแกรมนี้)นอกจากนี้ยังมีตัวแปรบิวท์อินอีกด้วย

%CD%%DATE%%เวลา%%สุ่ม%%CD% ขยายไปยังไดเร็กทอรีปัจจุบัน โดยทั่วไป เส้นทางเบื้องหลัง >%DATE% และ %TIME% แรกคือวันที่และเวลา%RANDOM% ให้ตัวเลขสุ่มระหว่าง 0 ถึง 32767 ฉันไม่คิดจะเปลี่ยนช่วง และก็แค่นั้นแหละ! ฉันหวังว่าคุณจะสนุกกับคำแนะนำนี้ ฉันทำงานหนักมาก หวังว่ามันจะชดเชยการขาดงาน 10 เดือน ตอนนี้เป็นข่าวร้าย ฉันจะมีปัญหาเล็กน้อยในการตอบคำถามใดๆ ในอีกไม่กี่เดือนข้างหน้านี้ เพราะฉันจะอยู่นอกประเทศ แต่ถ้าคุณมีคำถามเพียงแค่แสดงความคิดเห็นทุกคน ถ้าฉันสามารถเข้าใช้คอมพิวเตอร์ได้ ฉันจะตอบอย่างแน่นอน แต่ฉันไม่คิดว่านั่นจะจำเป็น Instructables เป็นชุมชนที่เป็นมิตร และฉันแน่ใจว่ามีคนที่นั่นจะช่วยคุณในชะตากรรมของคุณ ขอให้มีความสุข!

แนะนำ: