ไวยากรณ์คำสั่ง คำสั่ง cmd พื้นฐาน - มีประโยชน์มาก

ไม่เก็บถาวร (d)

ไม่เปลี่ยนรูป (i)

การบันทึกข้อมูล (ญ)

ลบอย่างปลอดภัย

ด้านบนของต้นไม้ลำดับชั้น (T)

ปิดการผสานที่ส่วนท้ายของไฟล์ (t)

ไม่สามารถถอดออกได้ (u)

cmp - เปรียบเทียบสองไฟล์ และหากแตกต่างกัน ให้รายงานไบต์แรกและบรรทัดที่พบความแตกต่าง

ไวยากรณ์คำสั่ง

รูปแบบของคำสั่งนี้คือ:

ตัวเลือก cmp... จากไฟล์

ชื่อไฟล์ "-" หมายถึงอินพุตมาตรฐาน "cmp" ยังใช้อินพุตมาตรฐานหากไม่ได้ระบุไฟล์ใดไฟล์หนึ่ง

สถานะเอาต์พุต 0 หมายถึงไม่พบความแตกต่าง 1 หมายถึงพบแล้ว 2 หมายถึงมีข้อผิดพลาด

พิมพ์อักขระที่แตกต่างกัน แสดงอักขระควบคุมด้วยอักขระ "^" และตัวอักษร และนำหน้าอักขระด้วยชุดบิตสูงด้วย "-M" (แสดงถึง "เมตา")

ละเว้นเริ่มต้น = BYTES

ละเว้นความแตกต่างทั้งหมดในไบต์แรก BYTES ไฟล์อินพุต. ถือว่าไฟล์ที่มีขนาดเล็กกว่า BYTES ไบต์ว่างเปล่า

พิมพ์อักขระที่โดดเด่นทั้งหมด แสดงอักขระควบคุมด้วยอักขระ "^" และตัวอักษร และนำหน้าอักขระด้วยชุดบิตสูงสุดด้วย "-M" (หมายถึง "เมตา")

เงียบ หรือ -s หรือ --เงียบ

ไม่พิมพ์อะไรเลย ส่งคืนเฉพาะสถานะเอาต์พุตที่ระบุว่าไฟล์แตกต่างกันหรือไม่

พิมพ์ออฟเซ็ต (ทศนิยม) และค่า (ฐานแปด) ของไบต์ที่แตกต่างกันทั้งหมด

V หรือ --version

ให้หมายเลขเวอร์ชันของ cmp

file เป็นคำสั่ง Unix สำหรับกำหนดประเภทของไฟล์

การใช้งาน

ไฟล์ [-zL] [-f ไฟล์] ไฟล์ ...

กุญแจ

ไฟล์ F: อ่านรายการไฟล์ที่จะตรวจสอบจากไฟล์ที่ระบุ

L: ระบุประเภทของไฟล์ที่อ้างอิง

Z: ระบุประเภทของไฟล์ที่พบในไฟล์บีบอัด

ln เป็นคำสั่ง UNIX ที่สร้างความสัมพันธ์ระหว่างไฟล์และชื่อไฟล์ รูปแบบคำสั่ง:

ไฟล์ ln1 ไฟล์2

# สร้างฮาร์ดลิงก์แล้ว-s ไฟล์1 ไฟล์2

# การสร้างลิงก์สัญลักษณ์

คำสั่งนี้สร้างฮาร์ดลิงก์ไปยังไฟล์ "file1" ซึ่งจะมีลักษณะเหมือน "file2" ดังนั้นสำหรับระบบไฟล์ ไฟล์ต้นฉบับ"file1" และลิงก์ไปยัง "file2" จะเป็นไฟล์เดียวกัน ฮาร์ดลิงก์ไม่สามารถชี้ไปที่ไฟล์ในระบบไฟล์อื่นได้

mv (จากภาษาอังกฤษ move) เป็นยูทิลิตีใน UNIX และ ระบบที่เหมือน UNIXใช้เพื่อย้ายหรือเปลี่ยนชื่อไฟล์หรือไดเร็กทอรี

การใช้งาน:

หากกำหนดชื่อไฟล์สองไฟล์เป็นอาร์กิวเมนต์ ชื่อของไฟล์แรกจะเปลี่ยนเป็นชื่อไฟล์ที่สอง

หากอาร์กิวเมนต์สุดท้ายเป็นชื่อของไดเร็กทอรีที่มีอยู่ mv จะย้ายไฟล์ที่กำหนดทั้งหมดไปยังไดเร็กทอรีนั้น

หากอาร์กิวเมนต์สุดท้ายไม่ใช่ไดเร็กทอรีและกำหนดไฟล์มากกว่าสองไฟล์ จะเกิดข้อผิดพลาด

คีย์ที่ใช้กับ mv:

-f ไม่ต้องแจ้งให้ยืนยันการดำเนินการ

-i พร้อมท์ให้ยืนยันการดำเนินการเมื่อมีไฟล์ที่จะเปลี่ยนชื่อหรือย้ายไป

--- สิ้นสุดรายการคีย์ ใช้กับไฟล์ที่มีชื่อขึ้นต้นด้วย -

rm (จากภาษาอังกฤษ Remove) เป็นยูทิลิตี้ในระบบ UNIX และ UNIX ที่ใช้เพื่อลบไฟล์ออกจากระบบไฟล์ ตัวเลือกที่ใช้กับ rm:

R - ประมวลผลไดเรกทอรีย่อยที่ซ้อนกันทั้งหมด คีย์ที่กำหนดจำเป็นหากไฟล์ที่ถูกลบเป็นไดเร็กทอรี แม้ว่าไฟล์นั้นจะว่างเปล่าก็ตาม หากไฟล์ที่ถูกลบไม่ใช่ไดเร็กทอรี อ็อพชัน -r จะไม่มีผลกับคำสั่ง rm

ฉัน - พร้อมท์ให้ยืนยันการดำเนินการลบแต่ละครั้ง

F - อย่าส่งคืนรหัสข้อผิดพลาดหากข้อผิดพลาดเกิดจากไฟล์ที่ไม่มีอยู่จริง ไม่ขอยืนยันการทำธุรกรรม

rm มักจะเป็นคำพ้องความหมายสำหรับคำสั่ง rm -i นั่นคือคำสั่งพร้อมต์ตามค่าเริ่มต้น

ยืนยันก่อนทำการลบไฟล์ เพื่อป้องกันการลบโดยไม่ตั้งใจ หากผู้ใช้ต้องการลบไฟล์จำนวนมากโดยไม่ยืนยันการดำเนินการ สวิตช์ -i สามารถแทนที่ได้โดยการเพิ่มสวิตช์ -f

chmod - เปลี่ยนสิทธิ์สำหรับไฟล์และโฟลเดอร์ ชื่อนี้มาจากโปรแกรม Unix chmod ซึ่งเปลี่ยนสิทธิ์การเข้าถึงไฟล์ ไดเร็กทอรี และลิงก์สัญลักษณ์

สิทธิ์จะถูกบันทึกทันทีสำหรับผู้ใช้สามประเภท: เจ้าของไฟล์ กลุ่มที่เป็นเจ้าของไฟล์ และสำหรับผู้ใช้รายอื่น chmod สามารถเขียนได้สองรูปแบบ: ตัวเลขและอักขระ

เพื่อให้เข้าใจสาระสำคัญของการตั้งค่าสิทธิ์ในระบบที่คล้าย Unix คุณจำเป็นต้องรู้การแสดงตัวเลขในรูปฐานแปดและ ระบบเลขฐานสองการคำนวณ

กลุ่มผู้ใช้อื่น ๆ

111 101 101 rwx r-x r-x u g o

ตัวอย่างของรายการอักขระ "rwxr-xr-x"

ตัวอย่างของรายการตัวเลขคือ "755" ซึ่งเทียบเท่ากับรายการสตริงด้านบน แต่ละสิทธิ์มีรหัสตัวเลขและสามารถตั้งค่าได้ด้วยตนเอง:

400 - เจ้าของมีสิทธิ์อ่าน

200 - เจ้าของมีสิทธิ์เขียน

100 - เจ้าของมีสิทธิ์ดำเนินการ

40 - กลุ่มมีสิทธิ์อ่าน

20 - กลุ่มมีสิทธิ์บันทึก

10 - กลุ่มมีสิทธิ์ที่จะดำเนินการ;

4 - ที่เหลือมีสิทธิ์อ่าน

2 - ส่วนที่เหลือมีสิทธิ์เขียน

1 - ส่วนที่เหลือมีสิทธิ์ที่จะดำเนินการ

เมื่อรวมรหัสเหล่านี้แล้ว คุณจะได้รับบันทึกเชิงสัญลักษณ์ ตัวอย่างเช่น chmod 444 (ชื่อไฟล์): 400+40+4=444 - ทุกคนมีสิทธิ์เข้าถึงแบบอ่านอย่างเดียว

นอกเหนือจากค่ามาตรฐาน "rwx" แล้ว คำสั่ง CHMOD ยังควบคุมบิต SGID , SUID และ T หากมีการตั้งค่าแอตทริบิวต์ SUID หรือ SGID ไฟล์สามารถดำเนินการได้ด้วยสิทธิ์ของเจ้าของไฟล์หรือกลุ่มตามลำดับ

สำหรับ SUID น้ำหนักคือ 4000 และสำหรับ SGID คือ 2000

ตัวอย่าง chmod 4444 (ชื่อไฟล์) - ทุกคนมีสิทธิ์อ่านอย่างเดียว แต่ไฟล์จะถูกเรียกใช้เพื่อดำเนินการโดยมีสิทธิ์ของเจ้าของ สำหรับโฟลเดอร์: การตั้งค่า SGID จะทำให้ไฟล์ใหม่แต่ละไฟล์ที่สร้างขึ้นอยู่ในกลุ่มเดียวกันกับไดเร็กทอรีเอง แทนที่จะเป็นกลุ่มหลักของเจ้าของเริ่มต้น SUID สำหรับไดเร็กทอรีนั้นไม่มีความหมาย

t-bit ใช้กับไดเร็กทอรี เมื่อไม่ได้ตั้งค่า t-bit สำหรับไดเร็กทอรี ไฟล์ในไดเร็กทอรีที่กำหนด

บทความนี้กล่าวถึงไวยากรณ์ทั่วไปของคำสั่งเชลล์ ( เปลือก) และการใช้งานแสดงในตัวอย่างคำสั่งพื้นฐานหลายคำสั่ง

อย่างเป็นทางการ ไวยากรณ์คำสั่งถูกกำหนดดังนี้:

Utility_name

ที่นี่ utility_name หมายถึงชื่อ คำสั่งหรือ สาธารณูปโภค, ตัวเลือก — ยอมรับโดยคำสั่ง กุญแจหรือ ตัวเลือก, และตัวถูกดำเนินการ - ข้อโต้แย้งคำสั่ง วงเล็บเหลี่ยมรอบตัวเลือกและตัวถูกดำเนินการระบุว่าตัวเลือกเหล่านี้เป็นทางเลือกและอาจหายไป

มาเขียน "คำจำกัดความ" ของเราโดยละเอียด:

Utility_name [-a] [-b] [-c optarg] [-d|-e] [-foptarg]

กุญแจคือเครื่องหมายลบตามด้วยตัวอักษรเดี่ยวหรือตัวเลข สามารถรวมปุ่มหลายปุ่มภายใต้สัญลักษณ์ลบหนึ่งอัน ตัวอย่างเช่น ตัวเลือก -a และ -b สามารถเขียนเป็น -ab บางตัวเลือกอาจมีอาร์กิวเมนต์เพิ่มเติม (เช่น optarg ใน -c และ -f) ซึ่งเขียนต่อจากตัวเลือกนี้ทันที (-f) หรือคั่นด้วยอักขระเว้นวรรคหรือแท็บ (-c) หากตัวเลือกใช้หลายอาร์กิวเมนต์ พวกเขาจะถูกเขียนโดยคั่นด้วยเครื่องหมายจุลภาค (optarg1,optarg2) หรือในเครื่องหมายคำพูดคั่นด้วยช่องว่าง ("optarg1 optarg2") คีย์บางคีย์อาจใช้ร่วมกันไม่ได้ ในตัวอย่างด้านบน มันคือ -d และ -e สัญลักษณ์ไพพ์ระบุว่าตัวเลือกเหล่านี้ไม่เกิดร่วมกัน และควรใช้ตัวเลือกเดียวเท่านั้น หากสวิตช์ดังกล่าวได้รับพร้อมกันในบรรทัดคำสั่ง ตามกฎแล้ว สวิตช์ที่พบล่าสุดจะถูกต้อง สุดท้าย อาร์กิวเมนต์ของคำสั่ง ถ้ามี จะอยู่หลังตัวเลือกทั้งหมด ในตัวอย่างข้างต้น สัญลักษณ์จุดไข่ปลาระบุว่าสามารถมีได้หลายอาร์กิวเมนต์ ในกรณีนี้ จะคั่นด้วยช่องว่างหรือแท็บ

ตัวคั่นพิเศษ - สามารถใช้เพื่อทำเครื่องหมายจุดสิ้นสุดของตัวเลือก สิ่งใดก็ตามหลังจากที่คำสั่งใช้เป็นอาร์กิวเมนต์ แม้ว่ามันจะขึ้นต้นด้วยเครื่องหมายลบก็ตาม ซึ่งถูกตีความเป็นอักขระตัวเลือก ตัวอย่างเช่น:

คำสั่ง -abc -d optarg -- -operand1 ตัวถูกดำเนินการ2

ที่นี่ -operand1 ทำหน้าที่เป็นอาร์กิวเมนต์ของคำสั่ง ไม่ใช่ตัวเลือก แม้ว่าจะขึ้นต้นด้วย "ลบ" ก็ตาม

หากใช้อักขระลบตัวเดียวเป็นอาร์กิวเมนต์ชื่อไฟล์ของคำสั่ง อักขระดังกล่าวจะระบุอินพุตมาตรฐานหรือเอาต์พุตมาตรฐาน ขึ้นอยู่กับบริบทที่ใช้คำสั่งนั้น

ยูทิลิตี้ส่วนใหญ่ที่พัฒนาโดยโครงการ GNU รองรับนอกเหนือจากตัวเลือกตัวอักษรเดียว "สั้น" ซึ่งเรียกว่าตัวเลือก "ยาว" ซึ่งเป็นคำตั้งแต่หนึ่งคำขึ้นไปที่คั่นด้วยยัติภังค์ ตัวเลือก "ยาว" นำหน้าด้วยอักขระ "ลบ" สองตัว ไวยากรณ์ทั่วไปที่ใช้ตัวเลือก "ยาว" สามารถเขียนได้ดังนี้:

Utility_name [--longopt1] [--logopt2=optarg1] [--longopt3 optarg2]

กฎสำหรับการเขียนอาร์กิวเมนต์ตัวเลือกแตกต่างจากกฎ "สั้น" ตรงที่ไม่อนุญาตให้เขียนตัวเลือกและอาร์กิวเมนต์ร่วมกัน แต่อาร์กิวเมนต์จำเป็นต้องคั่นด้วยช่องว่าง (เช่นใน --longopt3) หรือ "เท่ากับ " ตัวละคร (เช่นใน --longopt2) รูปแบบของสัญกรณ์เหล่านี้เทียบเท่ากัน

ตามกฎแล้วในยูทิลิตี้หลายตัวที่รองรับตัวเลือก "ยาว" จะมีการติดต่อแบบหนึ่งต่อหนึ่งระหว่างตัวเลือก "สั้น" และ "ยาว" นั่นคือแต่ละปุ่ม "สั้น" จะสอดคล้องกับตัวเลือก "ยาว" หนึ่งตัวเลือก อย่างไรก็ตาม การสนทนานั้นไม่เป็นความจริงเสมอไป และตัวเลือก "long" จะไม่มีอะนาล็อกในคีย์ "short" เสมอไป

จบทฤษฎีน่าเบื่อแล้ว มาดูกันดีกว่าว่าในทางปฏิบัติจะเป็นอย่างไร

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

ลองวิเคราะห์ตัวอย่างบทสนทนาของผู้ปฏิบัติงานกับระบบต่อไปนี้:

$ ฉันเป็นใครโหหหหหหหหหห ชื่อโฮสต์ -sโชคดี$ uname-sr FreeBSD 7.1-STABLE$ เสียงสะท้อน สวัสดีชาวโลกสวัสดีชาวโลก.

ในตัวอย่างนี้ เครื่องหมายดอลลาร์ ($) หมายถึงพรอมต์ ( พร้อมท์) command shell ข้อความตัวหนาระบุคำสั่งที่ผู้ดำเนินการป้อน และข้อความล้วนแสดงผลลัพธ์ของระบบ

ในคำสั่งแรก (whoami) ผู้ดำเนินการพยายามค้นหาว่าชื่อของเขาคืออะไร หรือมากกว่านั้น ภายใต้ผู้ใช้รายใด เซสชันเชลล์นี้กำลังทำงานอยู่ อย่างที่คุณเห็น ระบบตอบกลับด้วยชื่อผู้ใช้ bofh คำสั่ง whoami ไม่ต้องการพารามิเตอร์ใดๆ ไม่มีสวิตช์หรืออาร์กิวเมนต์ คุณสามารถลองส่งไปให้เธอ:

$ whoami-h whoami: ตัวเลือกที่ผิดกฎหมาย -- h การใช้งาน: whoami $ whoamisometextการใช้งาน: whoami

อย่างที่คุณเห็น ยูทิลิตี้ whoami กรุณารายงานว่าไม่ทราบว่าผู้ดำเนินการให้สวิตช์ -h อะไรแก่มัน และการใช้บรรทัด: whoami แนะนำไวยากรณ์คำสั่ง

คำสั่งที่สอง (ชื่อโฮสต์) ช่วยให้ผู้ปฏิบัติงานทราบว่าโฮสต์ใดที่เชลล์กำลังทำงานอยู่ ในเวลาเดียวกัน โอเปอเรเตอร์ระบุสวิตช์ -s ซึ่งในกรณีนี้จะสั่งให้ยูทิลิตีชื่อโฮสต์แสดงเฉพาะชื่อโฮสต์ "แบบสั้น" นั่นคือไม่มีส่วนโดเมน (กล่าวคือ จนถึงจุดแรก)

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

$ ชื่อ -s -r FreeBSD 7.1-เสถียร

สุดท้าย คำสั่งที่สี่ (echo) พิมพ์อาร์กิวเมนต์ที่ส่งผ่านไปยังคำสั่งนั้น

อย่างที่เราเห็นทีมสามารถมีได้มากมาย คีย์ที่แตกต่างกันและข้อโต้แย้ง จำนวนของพวกเขาแตกต่างกันไปตามยูทิลิตี้ไปจนถึงยูทิลิตี้ ความหมายแตกต่างกันไป ตัวเลือกสามารถเป็น "สั้น" และ "ยาว" เป็นต้น ยิ่งไปกว่านั้น ในระบบปฏิบัติการที่แตกต่างกัน คำสั่งเดียวกันอาจมีชุดคีย์ที่แตกต่างกัน ซึ่งอาจทำให้สับสนมากยิ่งขึ้น

เป็นเรื่องปกติที่จะจำพารามิเตอร์ทั้งหมดของคำสั่งบางคำสั่งไม่ได้ สิ่งนี้ไม่จำเป็น มีวิธีรีเฟรชไวยากรณ์และตัวเลือกของคำสั่งเฉพาะอย่างรวดเร็ว - โดยใช้ตัวเลือก -h และ / หรือ --help หากยูทิลิตี้รองรับ ตัวอย่างเช่น ในตัวอย่างคำสั่ง whoami บน FreeBSD ด้านบน แสดงให้เห็นว่าคำสั่งนี้ไม่รู้จักคีย์ใด ๆ และยิ่งกว่านั้นค่อนข้างพูดน้อย บน GNU/Linux เอาต์พุตจะดูแตกต่างออกไปเล็กน้อยและมีรายละเอียดมากขึ้น:

$ whoami-h whoami: ตัวเลือกที่ไม่ถูกต้อง -- "h" ลอง `whoami --help" สำหรับข้อมูลเพิ่มเติม $ ใครมี - ช่วยด้วยการใช้งาน: whoami ... พิมพ์ชื่อผู้ใช้ที่เชื่อมโยงกับ ID ผู้ใช้ที่มีผลบังคับใช้ในปัจจุบัน เหมือนกับ id -un --help แสดงความช่วยเหลือนี้และออก --version ข้อมูลรุ่นเอาท์พุทและออก

ตามกฎแล้ว คำสั่งที่รองรับตัวเลือก "long" มักจะมีตัวเลือก --help เสมอ แต่ตามที่กล่าวไว้ข้างต้น ตัวเลือกนี้อนุญาตให้คุณรีเฟรชหน่วยความจำเกี่ยวกับวิธีใช้คำสั่งนี้และพารามิเตอร์เท่านั้น จะหาเพิ่มเติมได้ที่ไหน รายละเอียดข้อมูลเกี่ยวกับทีมใดทีมหนึ่ง ซึ่งจะมีการหารือใน

12.02.15 21.3K

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

บรรทัดคำสั่งคืออะไร

บรรทัดคำสั่งเป็นเครื่องมือที่ง่ายที่สุดในการจัดการระบบปฏิบัติการของคอมพิวเตอร์ การจัดการเกิดขึ้นด้วยความช่วยเหลือของคำสั่งสงวนจำนวนหนึ่งและชุดอักขระ แป้นพิมพ์ข้อความโดยไม่ต้องป้อนข้อมูลด้วยเมาส์ ในระบบปฏิบัติการ Windows).

บนระบบที่ใช้ UNIX คุณสามารถใช้เมาส์เมื่อทำงานกับบรรทัดคำสั่ง

คำสั่งบางส่วนมาจาก MS-DOS มาหาเรา บรรทัดคำสั่งเรียกอีกอย่างว่าคอนโซล มันไม่ได้ใช้สำหรับการบริหารเท่านั้น ระบบปฏิบัติการแต่ยังควบคุมโปรแกรมทั่วไป บ่อยครั้งที่คำสั่งที่ใช้บ่อยที่สุดจะรวมอยู่ในชุดคำสั่งดังกล่าว

ข้อดีของการใช้คำสั่ง cmd พื้นฐานคือใช้ทรัพยากรระบบน้อยที่สุด และนี่เป็นสิ่งสำคัญในกรณีฉุกเฉินเมื่อพลังงานทั้งหมดของคอมพิวเตอร์เกี่ยวข้องไม่ทางใดก็ทางหนึ่ง

cmd มีความสามารถในการดำเนินการและสร้างจำนวนเต็ม ไฟล์แบตช์ซึ่งแสดงถึงลำดับการดำเนินการของคำสั่งจำนวนหนึ่ง (สคริปต์) ด้วยเหตุนี้จึงสามารถใช้เพื่อทำให้งานบางอย่างเป็นไปโดยอัตโนมัติ ( การจัดการบัญชี การเก็บถาวรข้อมูล และอื่นๆ).

เชลล์คำสั่งของ Windows สำหรับจัดการและเปลี่ยนเส้นทางคำสั่งไปยังยูทิลิตี้และเครื่องมือของระบบปฏิบัติการบางอย่างคือตัวแปล Cmd.exe โดยจะโหลดคอนโซลและเปลี่ยนเส้นทางคำสั่งในรูปแบบที่ระบบสามารถเข้าใจได้

ทำงานกับบรรทัดคำสั่งในระบบปฏิบัติการ Windows

คุณสามารถเรียกคอนโซลใน Windows ได้หลายวิธี:

ทั้งสองวิธีเกี่ยวข้องกับการเรียกใช้คอนโซลในนามของ ผู้ใช้ปัจจุบัน. นั่นคือด้วยสิทธิ์และข้อจำกัดทั้งหมดที่กำหนดให้กับบทบาทในระบบปฏิบัติการ ในการเรียกใช้ cmd ด้วยสิทธิ์ของผู้ดูแลระบบ คุณต้องเลือกไอคอนโปรแกรมในเมนู Start และเลือกรายการที่เหมาะสมในเมนูบริบท:


หลังจากรันยูทิลิตีแล้ว คุณจะได้รับ ข้อมูลพื้นฐานเกี่ยวกับคำสั่งและรูปแบบการเขียนในคอนโซล ในการทำเช่นนี้ให้ป้อนคำสั่งช่วยเหลือแล้วกด " เข้าสู่»:

คำสั่งพื้นฐานสำหรับการทำงานกับไฟล์และไดเร็กทอรี

คำสั่งที่ใช้บ่อยที่สุดคือ:

  • RENAME - เปลี่ยนชื่อไดเร็กทอรีและไฟล์ ไวยากรณ์คำสั่ง:

เปลี่ยนชื่อ | REN [ไดรฟ์/พาธ] ชื่อไฟล์/ไดเร็กทอรีดั้งเดิม | ชื่อไฟล์ท้าย
ตัวอย่าง: เปลี่ยนชื่อ C:UsershomeDesktoptost.txt test.txt

  • DEL (ERASE) - ใช้เพื่อลบเฉพาะไฟล์ ไม่ใช่ไดเร็กทอรี ไวยากรณ์ของมันคือ:

เดล | ลบ [วิธีการประมวลผล] [ชื่อไฟล์]
ตัวอย่าง: Del C:UsershomeDesktoptest.txt/P

วิธีการประมวลผลเป็นค่าสถานะพิเศษที่อนุญาตให้คุณใช้เงื่อนไขบางอย่างเมื่อลบไฟล์ ในตัวอย่างของเรา แฟล็ก "P" เปิดใช้งานการแสดงไดอะล็อกสิทธิ์สำหรับการลบแต่ละไฟล์:


สำหรับข้อมูลเพิ่มเติมเกี่ยวกับค่าที่เป็นไปได้ของพารามิเตอร์ "วิธีการประมวลผล" โปรดดูเอกสารทางเทคนิคสำหรับระบบปฏิบัติการ Windows

  • MD - ให้คุณสร้างโฟลเดอร์ตามเส้นทางที่ระบุ ไวยากรณ์:

MD [ไดรฟ์:] [เส้นทาง]
ตัวอย่าง:
MD C:UsershomeDesktoptest1test2

ตัวอย่างจะสร้างโฟลเดอร์ย่อย test2 ในโฟลเดอร์ test1 หากไม่มีหนึ่งในโฟลเดอร์รูทของพาธ ก็จะถูกสร้างขึ้นด้วย:

  • ร.ด. ( RMDIR) - ลบโฟลเดอร์เฉพาะหรือไดเร็กทอรีทั้งหมดในเส้นทางที่ระบุ ไวยากรณ์:

RD | RMDIR [คีย์กระบวนการ] [ไดรฟ์/พาธ]
ตัวอย่าง:
rmdir /s C:UsershomeDesktoptest1test2

ตัวอย่างใช้แฟล็ก s ซึ่งจะทำให้สาขาทั้งหมดของไดเร็กทอรีที่ระบุในพาธถูกลบ ดังนั้น คุณไม่ควรใช้คำสั่ง rmdir กับสวิตช์การประมวลผลนี้โดยไม่จำเป็น

ในหัวข้อถัดไป เราจะพิจารณาคำสั่งเครือข่าย cmd ให้ละเอียดยิ่งขึ้น

คำสั่งเครือข่าย

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

  • ping - คำสั่งใช้เพื่อตรวจสอบการเชื่อมต่อเครือข่ายของพีซี คอมพิวเตอร์ระยะไกลจำนวนแพ็กเก็ตที่กำหนดจะถูกส่งแล้วส่งกลับไป เวลาในการส่งแพ็คเก็ตและเปอร์เซ็นต์การสูญเสียจะถูกนำมาพิจารณาด้วย ไวยากรณ์:

ping [-t] [-a] [-n นับ] [-l ขนาด] [-f] [-i TTL] [-v ชนิด] [-r นับ] [-s นับ] [(-j โฮสต์ลิสต์ | - k รายชื่อโฮสต์)] [-w ช่วงเวลา] [target_PC_name]

ตัวอย่างการใช้งานคำสั่ง:
ตัวอย่าง ping.microsoft.com
ping -w 10,000 192.168.239.132

ในที่สุด ตัวอย่าง cmdคำสั่ง ping ส่งคำขอไปยังปลายทางด้วยที่อยู่ IP ที่ระบุ ช่วงเวลาระหว่างแพ็กเก็ตคือ 10,000 (10 วินาที) ตามค่าเริ่มต้น พารามิเตอร์นี้ถูกตั้งค่าเป็น 4000:

  • tracert - ใช้เพื่อกำหนดเส้นทางเครือข่ายไปยังทรัพยากรที่ระบุโดยส่งข้อความสะท้อนพิเศษผ่านโปรโตคอล
  • ICMP (โปรโตคอลข้อความควบคุม) หลังจากรันคำสั่งพร้อมพารามิเตอร์แล้ว รายการของเราเตอร์ทั้งหมดที่พาธข้อความผ่านจะแสดงขึ้น องค์ประกอบแรกในรายการคือเราเตอร์ตัวแรกที่ด้านข้างของทรัพยากรที่ร้องขอ

ไวยากรณ์ตัวติดตามของคำสั่ง cmd คือ:
tracert [-d] [-h max_hops] [-j host_list] [-w ช่วงเวลา] [target_resource_name]
ตัวอย่างการใช้งาน:
ติดตาม -d -h 10 microsoft.com

ตัวอย่างติดตามเส้นทางไปยังทรัพยากรที่ระบุ สิ่งนี้จะเพิ่มความเร็วของการดำเนินการเนื่องจากการใช้พารามิเตอร์ d ซึ่งป้องกันไม่ให้คำสั่งพยายามรับสิทธิ์ในการอ่านที่อยู่ IP จำนวนการเปลี่ยน (กระโดด) จำกัด ไว้ที่ 10 โดยใช้ค่าที่ตั้งไว้ของพารามิเตอร์ h ตามค่าเริ่มต้น จำนวนการกระโดดคือ 30:

ปิดระบบ [(-l|-s|-r|-a)] [-f] [-m [\PCName]] [-t xx] [-c "ข้อความ"] [-d[u][p]: xx:ปป]
ตัวอย่าง:
ปิดเครื่อง /s /t 60 /f /l /m \191.162.1.53

จะมีการปิดเครื่องพีซีระยะไกล (m) พร้อมที่อยู่ IP ที่ระบุ (191.162.1.53) หลังจาก 60 วินาที (t) ซึ่งจะบังคับให้คุณออกจากระบบแอปพลิเคชันทั้งหมด ( f ) และเซสชันผู้ใช้ปัจจุบัน ( l )

NET USER - การจัดการบัญชีผู้ใช้

คำสั่ง NET USERมีไว้สำหรับ เพิ่ม แก้ไข หรือดูบัญชีผู้ใช้บนคอมพิวเตอร์ เมื่อคุณรันคำสั่งบนบรรทัดรับคำสั่งโดยไม่มีพารามิเตอร์ รายการบัญชีจะแสดงขึ้น ผู้ใช้วินโดวส์นำเสนอบนคอมพิวเตอร์ (คำสั่งนี้ใช้ได้ดีกับ Windows 10) ข้อมูลบัญชีผู้ใช้ถูกจัดเก็บไว้ในฐานข้อมูล Windows

ไวยากรณ์คำสั่ง NET USER

ผู้ใช้เน็ต [ชื่อผู้ใช้ [รหัสผ่าน | *] [ตัวเลือก]]

ชื่อผู้ใช้สุทธิ (รหัสผ่าน | *) /เพิ่ม [ตัวเลือก]

ชื่อผู้ใช้เน็ต , ที่ไหน

  • ชื่อผู้ใช้- ระบุชื่อบัญชีผู้ใช้ที่สามารถเพิ่ม ลบ แก้ไข หรือดูได้ ชื่อมีความยาวได้สูงสุด 20 อักขระ
  • รหัสผ่าน- กำหนดหรือเปลี่ยนรหัสผ่านของผู้ใช้ พิมพ์เครื่องหมายดอกจัน (*) เพื่อแสดงรหัสผ่าน เมื่อป้อนจากแป้นพิมพ์ ตัวอักษรของรหัสผ่านจะไม่แสดงบนหน้าจอ
  • ตัวเลือก- ระบุตัวเลือกบรรทัดคำสั่งสำหรับคำสั่ง
  • คำสั่งช่วยเหลือสุทธิ- แสดงความช่วยเหลือสำหรับคำสั่ง net ที่ระบุ

ตัวเลือกเพิ่มเติมสำหรับคำสั่ง NET USER

  • /ใช้งานอยู่:(ใช่ | ไม่ใช่) -เปิดหรือปิดใช้งานบัญชี หากบัญชีไม่ได้เปิดใช้งาน ผู้ใช้จะไม่สามารถเข้าถึงเซิร์ฟเวอร์ได้ บัญชีถูกเปิดใช้งานตามค่าเริ่มต้น
  • /comment:"ข้อความ" -ให้คุณเพิ่มคำอธิบายสำหรับบัญชีผู้ใช้ (สูงสุด 48 อักขระ) ข้อความคำอธิบายอยู่ในเครื่องหมายคำพูด
  • /รหัสประเทศ: nnn-ใช้รหัสประเทศที่ระบุสำหรับระบบปฏิบัติการเพื่อใช้ไฟล์ภาษาที่เหมาะสมเมื่อแสดงวิธีใช้ผู้ใช้และข้อความแสดงข้อผิดพลาด ค่า 0 คือรหัสประเทศเริ่มต้น
  • /หมดอายุ:(วันที่ | ไม่เคย) -วันหมดอายุของบัญชี ค่าไม่เคยสอดคล้องกับอายุการใช้งานที่ไม่แน่นอน วันที่อยู่ในรูปแบบ mm/dd/yy หรือ dd/mm/yy ขึ้นอยู่กับรหัสประเทศ เดือนสามารถระบุเป็นตัวเลข แบบเต็มหรือแบบย่อ (ตัวอักษรสามตัว) ปีสามารถระบุด้วยตัวเลขสองหรือสี่หลัก องค์ประกอบวันที่คั่นด้วยเครื่องหมายทับ (/) โดยไม่มีช่องว่าง
  • /ชื่อเต็ม:"ชื่อ"-ชื่อผู้ใช้แบบเต็ม (ตรงข้ามกับชื่อบัญชีผู้ใช้) ชื่ออยู่ในเครื่องหมายคำพูด
  • /homedir: เส้นทาง -ระบุพาธไปยังโฮมไดเร็กทอรีของผู้ใช้ ต้องมีตำแหน่งที่ระบุ
  • /passwordchg:(ใช่ | ไม่ใช่) -ระบุว่าผู้ใช้สามารถเปลี่ยนรหัสผ่านได้หรือไม่ (ค่าเริ่มต้นสามารถ)
  • /รหัสผ่านreq:(ใช่ | ไม่ใช่) -ระบุว่าบัญชีผู้ใช้ต้องมีรหัสผ่านหรือไม่ (ควรเป็นค่าเริ่มต้น)
  • /profilepath[:เส้นทาง] -ระบุเส้นทางไปยังโปรไฟล์การเข้าสู่ระบบของผู้ใช้
  • /scriptpath: เส้นทาง -เส้นทางไปยังสคริปต์ที่ผู้ใช้ใช้ในการเข้าสู่ระบบ
  • /ครั้ง:(เวลา | ทั้งหมด) -เวลาในการเข้าสู่ระบบ พารามิเตอร์เวลาระบุในรูปแบบ day[-day][,day[-day]],hour[-hour][,hour[-hour]] โดยเพิ่มครั้งละ 1 ชั่วโมง ชื่อของวันในสัปดาห์สามารถระบุได้แบบเต็มหรือแบบย่อ สามารถระบุชั่วโมงในรูปแบบ 12 ชั่วโมงหรือ 24 ชั่วโมง การแสดงเวลา 12 ชั่วโมง ใช้ am, pm, a.m. หรือน. ค่าทั้งหมดหมายถึงไม่มีการจำกัดเวลาในการเข้าสู่ระบบ และค่าว่างหมายถึงไม่มีการเข้าสู่ระบบเลย วันในสัปดาห์และเวลาคั่นด้วยเครื่องหมายจุลภาค รายการหลายรายการสำหรับวันในสัปดาห์และเวลาจะถูกคั่นด้วยเครื่องหมายอัฒภาค
  • /usercomment:"ข้อความ" -อนุญาตให้ผู้ดูแลระบบเพิ่มหรือแก้ไขความคิดเห็นในบัญชี
  • /เวิร์กสเตชัน:(ชื่อคอมพิวเตอร์[,...] | *) -อนุญาตให้คุณระบุคอมพิวเตอร์ได้สูงสุด 8 เครื่องที่ผู้ใช้สามารถเข้าสู่ระบบเครือข่ายได้ ถ้าพารามิเตอร์ /workstations ไม่มีรายการคอมพิวเตอร์หรือตั้งค่าเป็น * ผู้ใช้สามารถเข้าสู่ระบบเครือข่ายจากคอมพิวเตอร์เครื่องใดก็ได้

ตัวอย่างคำสั่ง NET USER

  • หากต้องการแสดงรายชื่อผู้ใช้ทั้งหมดบนคอมพิวเตอร์เครื่องนี้ ให้ใช้คำสั่ง: ผู้ใช้เน็ต
  • หากต้องการแสดงข้อมูลเกี่ยวกับผู้ใช้ "petr" ให้ใช้คำสั่งต่อไปนี้: ผู้ใช้เน็ต petr;
  • หากต้องการเพิ่มบัญชีผู้ใช้ Petr ด้วยชื่อผู้ใช้แบบเต็มและสิทธิ์ในการเชื่อมต่อตั้งแต่ 8.00 น. ถึง 17.00 น. วันจันทร์ถึงวันศุกร์ ให้ใช้คำสั่งต่อไปนี้: net user petr /add /times:Mon-Fri,08:00-17:00/fullname:"Petr"
  • หากต้องการลบบัญชี ให้ป้อนคำสั่ง: ผู้ใช้เน็ต petr /delete;
  • เพื่อปิดการใช้งาน บัญชี ให้ป้อนคำสั่ง: ผู้ใช้เน็ต petr /active:no.

วิดีโอ - การทำงานกับยูทิลิตี้ NET USER

ใช้ตัวอย่างคำสั่ง dir ที่อธิบายไว้แล้ว พิจารณากฎสำหรับการเขียนคำสั่งใน ระบบ MS-DOS. คำสั่งที่ระบุสามารถแสดงเป็น ปริทัศน์เช่น dir [เส้นทาง]

ตามที่คุณเข้าใจ ในรูปแบบนี้ คำสั่งนี้ไม่ควรป้อนลงในคอมพิวเตอร์ รายการนี้กำหนดไวยากรณ์ของคำสั่งเท่านั้น เป็นไปได้บนกระดาษ แต่ไม่ใช่ในบรรทัดคำสั่ง รายการคำสั่งเริ่มต้นด้วยชื่อ (ในตัวอย่างนี้ นี่คือชื่อ dir) ชื่อคำสั่งจะตามด้วยช่องว่างและตามด้วยชื่อไดรฟ์ซึ่งแสดงเป็น d: เนื่องจากไดรฟ์อาจถูกละเว้นในบางกรณี (ดูตัวอย่างด้านบน) ส่วนนี้ของคำสั่งจึงอยู่ในวงเล็บเหลี่ยม วงเล็บเหล่านี้ระบุว่าองค์ประกอบคำสั่งอาจหายไป โดยปกติแล้วไม่ควรพิมพ์วงเล็บเหลี่ยมเมื่อป้อนคำสั่ง ชื่อไดรฟ์ในรายการที่ใช้ร่วมกันตามด้วยเส้นทาง นอกจากนี้ยังไม่จำเป็นต้องระบุ ซึ่งในกรณีนี้เนื้อหาของไดเร็กทอรีรากจะแสดงบนหน้าจอ

คำสั่ง MS-DOS อาจรวมถึงสวิตช์ที่เรียกว่าที่ระบุเงื่อนไขสำหรับการดำเนินการคำสั่ง ตัวอย่างเช่น หากคุณพิมพ์ /P หลังคำสั่ง dir เนื้อหาของไดเร็กทอรีจะถูกใส่เลขหน้า โหมดนี้มีประโยชน์สำหรับไดเร็กทอรีขนาดใหญ่ที่มีเนื้อหาสามารถขยายหน้าจอได้หลายหน้า สำหรับไดเร็กทอรี SCHOOL คำสั่งเพจจะเป็น: dir c:school/p

นอกจากสวิตช์ P แล้ว คำสั่ง dir สามารถใช้สวิตช์ W เพื่อแสดงเฉพาะชื่อไฟล์ ห้าชื่อต่อบรรทัด ความเป็นไปได้ของการมีสวิตช์ในคำสั่งสะท้อนให้เห็นโดยรายการของแบบฟอร์ม: dir [path]

คำสั่งใด ๆ ของ MS-DOS สามารถแสดงแบบมีเงื่อนไขเป็น:

ชื่อคำสั่ง [อาร์กิวเมนต์]... [สวิตช์]...

จุดไข่ปลาในรายการเหล่านี้หมายความว่าองค์ประกอบคำสั่งก่อนหน้าจุดไข่ปลาสามารถทำซ้ำได้ตามจำนวนครั้ง ไม่ควรรวมจุดไข่ปลาไว้ในคำสั่ง อาร์กิวเมนต์มักจะเข้าใจว่าเป็นวัตถุที่ใช้คำสั่ง (ชื่อไฟล์ ไดเร็กทอรี ฯลฯ) อาร์กิวเมนต์มักจะแยกออกจากชื่อคำสั่งและเว้นวรรคจากกันและกัน

การสร้างและการลบไดเร็กทอรี

คุณคุ้นเคยกับคำสั่งไดเร็กทอรีหลายคำสั่งแล้ว:ผู้อำนวยการ ต้นไม้ ซีดี มาเสริมรายการนี้ด้วยคำสั่งสำหรับสร้างและลบไดเร็กทอรี นี่คือคำสั่ง md และ rd ตามลำดับ คำสั่ง md สามารถเขียนเป็น mkdir ซึ่งเป็นคำย่อของคำว่า make directory - สร้างไดเร็กทอรี คำสั่ง rd ยังสามารถเขียนในรูปแบบรายละเอียดเพิ่มเติม rmdir (ย่อมาจาก "remove directory") ไวยากรณ์ของคำสั่ง md และ rd เหมือนกัน:

md และ rd

ด้วยคำสั่ง md คุณสามารถสร้างโครงสร้างแผนผังของไดเร็กทอรีโดยการระบุพาธไปยังไดเร็กทอรีใหม่ นี่คือตัวอย่างบางส่วน:

สร้างไดเร็กทอรี GRAPH3 ในไดเร็กทอรีปัจจุบัน

สร้างไดเรกทอรี REST ในไดเรกทอรีรากของไดรฟ์ C

คำสั่ง rd อนุญาตให้คุณลบไดเร็กทอรีอื่นที่ไม่ใช่ไดเร็กทอรีปัจจุบัน ตัวอย่างเช่น หากต้องการลบไดเร็กทอรี HOBBY ในไดรฟ์ C คุณต้องพิมพ์:

โปรดทราบว่าไดเร็กทอรีที่ถูกลบโดยคำสั่ง rd จะต้องว่างเปล่า นั่นคือไฟล์และไดเร็กทอรีย่อยทั้งหมดจะต้องถูกลบในนั้นก่อน และต้องเริ่มขั้นตอนการลบจากระดับต่ำสุด (เราจะพูดถึงการดำเนินการกับไฟล์ในย่อหน้าถัดไป ). MS-DOS เวอร์ชันที่ขึ้นต้นด้วย 6.0 อนุญาตให้ลบไดเร็กทอรีพร้อมกับเนื้อหาทั้งหมดได้ ในการทำเช่นนี้ คุณต้องใช้คำสั่ง deltree ซึ่งมีรูปแบบคล้ายกับคำสั่ง md และ rd:

เดลทรี [เส้นทาง]

การลบทั้งหมดทำขึ้นด้วยการยืนยัน แต่ถ้าคุณระบุพารามิเตอร์ /y ในคำสั่ง ก็ไม่จำเป็นต้องยืนยัน เมื่อคุณต้องการลบไดเร็กทอรี (เช่น EXERC) ที่อยู่ในไดเร็กทอรีปัจจุบัน คุณเพียงพิมพ์ deltree exerc

ก่อนลบไดเร็กทอรี ระบบจะขอให้คุณยืนยันการลบ พิมพ์ Y (ใช่) แล้วกดปุ่ม Enter



กำลังโหลด...
สูงสุด