[เล่นเพลง] 

DOUG LLOYD: OK ดังนั้นขอพูดคุยเกี่ยวกับวิธีการ ใช้บรรทัดคำสั่งลินุกซ์ ตอนนี้ CS50 IDE หรือใน ความเป็นจริงแม้เครื่อง CS50, ถ้าคุณคุ้นเคยกับการนั้นหรือ คุณกำลังการรุ่นเก่าของ CS50, เป็นเครื่องที่ใช้ระบบคลาวด์ ซึ่งไหลอูบุนตู ซึ่งเป็นหนึ่งในหลายรสชาติ ของระบบปฏิบัติการลินุกซ์ ระบบปฏิบัติการลินุกซ์ ที่ชื่นชอบโดยโปรแกรมเมอร์ เพราะมันเป็นเพียงแค่เย็นใช่มั้ย? 

ลินุกซ์หลายสมัย มีอินเตอร์เฟซผู้ใช้แบบกราฟิก ซึ่งเรายังเรียกร้อง GUIs G-U-I เพื่อ ช่วยให้เมาส์ที่ใช้ง่ายนำทาง ซึ่งคุณอาจคุ้นเคยกับ ถ้าคุณเป็นผู้ใช้ Windows หรือ Mac ย้ายไปรอบ ๆ เมาส์ของคุณ ดับเบิลคลิกที่ไอคอนและอื่น ๆ ยังคง แต่เป็นโปรแกรมเมอร์ และแม้ว่า IDE มีความสามารถที่จะ ทำบางผู้ใช้แบบกราฟิก สิ่งที่การคลิกและ ลากและสิ่งที่ คุณยังจะใช้ของคุณ หน้าต่าง terminal สวยบ่อย และคุณสามารถทำหลาย งานเดียวที่คุณสามารถ ทำอย่างไรกับเมาส์ที่มีคำสั่งแป้นพิมพ์ และเรากำลังจะพูดคุยนิด ๆ หน่อย ๆ เกี่ยวกับสิ่งที่บางส่วนของคำสั่งดังกล่าว อยู่ในขณะนี้ 

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

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

ดังนั้นผมจึงได้เปิดขึ้นที่นี่ CS50 IDE และฉันจะซูมในใน ที่สองที่จะทำให้คุณมองใกล้ แต่นี่เป็นภาพกว้าง ของสิ่งที่ดูเหมือนว่า IDE ด้านซ้ายคุณจะเห็นเรามี ต้นไม้ไฟล์ที่คุณอาจ คุ้นเคยกับการดับเบิลคลิกและ ไฟล์และโฟลเดอร์และทุกสิ่งที่ เพื่อให้ยังคงมี ในเครื่อง CS50 ที่เป็นศูนย์กลางในด้านบนเป็นที่ที่คุณอยู่ จะต้องเขียนโค้ดของคุณเมื่อ คุณคลิกที่ไฟล์ และที่ด้านล่างเรา มีหน้าต่าง terminal ซึ่งเป็นที่ที่เราสามารถดำเนินการ คำสั่งเหล่านี้ขั้ว 

ฉันจะซูมใน และตรงไปที่นี่เพียง แสดงว่าในความเป็นจริงที่ฉันสามารถทำได้ คลิกที่ไฟล์เหล่านี้และโฟลเดอร์ เพื่อให้ชัดเจนที่ฉันกำลังรู้สึกที่ฉันมี สองโฟลเดอร์ที่เรียกว่า pset0 และ pset1, และสามไฟล์หนึ่งที่เรียกว่า สวัสดีหนึ่งเรียกว่า hello.c, และเป็นหนึ่งในที่เรียกว่า hello.txt 

ดังนั้นขอย้ายลงไปยังสถานี หน้าต่างและได้รับการมองใกล้ ดังนั้นเราก็พูดคุยกันอีกครั้งเกี่ยวกับ ความจริงที่ว่าเรามีสามไฟล์และสอง โฟลเดอร์ในไดเรกทอรีปัจจุบัน ถ้าผมพิมพ์คำสั่ง ls อีกครั้งซึ่ง เป็นคำสั่งเพื่อแสดงรายการ เนื้อหาของปัจจุบัน ไดเรกทอรีและจากนั้นผมกด Enter, มองสิ่งที่ฉันเห็น, สวัสดี hello.c, hello.txt, pset0 และ pset1 

pset0 และ pset1 มี สีฟ้าเพื่อแสดง เพื่อให้คุณทราบว่าผู้ที่มีไดเรกทอรี ที่เราสามารถนำทางเข้าไป และเราจะได้เรียนรู้เล็ก ๆ น้อย ๆ เล็กน้อยเกี่ยวกับการที่จะนำทาง ลงในไดเรกทอรีในนาทีที่ และทุกสิ่งอื่น ๆ ที่เป็นสีดำ ถ้าเป็นแฟ้มข้อความหรือแหล่งที่มารหัสที่ แฟ้มและสีเขียวถ้า มันเป็นแฟ้มที่ปฏิบัติการ ดังนั้นเห็นได้ชัดว่าผมหมายความว่า สามารถเรียกใช้โปรแกรมที่เรียกว่าสวัสดี นั่นคือสิ่งหนึ่งที่มีสีเขียวหมายถึง แต่โดยทั่วไปการพิมพ์ คำสั่งคำสั่ง ls ได้รับอนุญาตให้ ผมที่จะมองทุกอย่างที่มีอยู่ ในไดเรกทอรีปัจจุบันของฉันซึ่ง ตรงกับสิ่งที่เราเห็นที่นี่ใน การแสดงผลกราฟิกของเดียวกัน คำสั่งต่อไปที่คุณจะ อาจจะใช้ไม่น้อย เป็นซีดี, C ตัวพิมพ์เล็ก d พิมพ์เล็ก ซึ่งสั้นสำหรับเปลี่ยนไดเรกทอรี นี้ช่วยให้เราทำในสิ่งที่ผมเป็น พูดคุยเกี่ยวกับที่สองที่ผ่านมาซึ่ง คือการสำรวจระหว่าง ไดเรกทอรีที่คำสั่ง สายเมื่อเทียบกับ ดับเบิลคลิกที่โฟลเดอร์ ดังนั้นหากเราพิมพ์ cd แล้ว ชื่อของไดเรกทอรีที่ เราจะได้รับลงในไดเรกทอรีที่ 

เช่นกันทราบว่าชื่อ ของไดเรกทอรีปัจจุบันอยู่เสมอ จุดและชื่อของไดเรกทอรี ระดับหนึ่งดังกล่าวข้างต้นที่เรามีตอนนี้ ที่เป็นชื่อของโฟลเดอร์ใน ซึ่งโฟลเดอร์ของเราคือจุด dot-- หรือในที่ที่โฟลเดอร์ของเราจะเป็นจุดจุด และถ้าคุณเคยอยากรู้เกี่ยวกับ ชื่อของไดเรกทอรีของคุณ คุณสามารถพิมพ์รหัสผ่านซึ่งย่อมาจาก สำหรับไดเรกทอรีที่ทำงานปัจจุบัน เราจะดูที่สิ่งเหล่านี้ ตอนนี้โดยมุ่งหน้ากลับไปที่ CS50 IDE ดังนั้นฉันกลับมาอยู่ในพื้นที่ทำงานของฉันตอนนี้ และฉันจะซูมในอีกครั้งใน ขั้วเพื่อให้เราสามารถจะดู ที่ย้ายไปรอบ ๆ ภายในการ IDE ดังนั้นฉันจะแสดงรายการ เนื้อหาของไดเรกทอรีของฉัน อีกครั้งเพียงเพื่อ reground เราในการที่เรามี ดังนั้นถ้าผมพิมพ์คำสั่ง ls ซึ่ง สำหรับรายชื่ออีกครั้ง ฉันเห็นว่าฉันจะไป pset0 และ pset1 เหล่านี้คือไดเรกทอรี ฉันจะไปจากที่นี่ ฉันรู้ว่าเพราะ IDE ให้ ฉันเบาะแสพวกเขาด้วยการระบายสีสีฟ้า 

สมมติว่าผมต้องการที่จะ ได้รับลงในไดเรกทอรี pset1 ของฉัน เพราะผมทำงานเกี่ยวกับปัญหาการตั้งค่า 1 ฉันสามารถพิมพ์ cd-- อีกสั้น เปลี่ยนพื้นที่ directory--, pset1 และถ้าผมกด Enter สังเกตสิ่งที่เกิดขึ้น มันไม่ได้ดูชอบมากที่ได้เกิดขึ้น แต่ถ้าคุณมองที่พรอมต์ได้ในขณะนี้ บอกว่าผมอยู่ใน ~ / พื้นที่ทำงาน / pset1 ผมเคยเข้าไปสำรวจ pset1 โฟลเดอร์ที่อยู่ในพื้นที่ทำงานของฉัน 

และถ้าผมพิมพ์คำสั่ง ls ผมเห็นบางส่วน สิ่งที่แตกต่างกันที่นี่ใช่มั้ย? นี้จะไม่เหมือนกัน รายการที่ผมเห็นมาก่อน ผมเคยเข้าไปสำรวจ pset1 ดังนั้นตอนนี้เมื่อฉันพิมพ์คำสั่ง ls ผม ได้รับบริบทของสิ่งที่ฉันที่สามารถ เห็นได้จากที่อยู่ในโฟลเดอร์ pset1 

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

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

สมมติว่าผมต้องการ ที่จะเลื่อนขึ้นระดับหนึ่ง ฉันต้องการที่จะได้รับกลับไป ไดเรกทอรีพื้นที่ทำงานของฉัน ฉันไม่สามารถพิมพ์พื้นที่ทำงานซีดี ไม่มีไฟล์หรือไดเรกทอรีดังกล่าว และเหตุผลสำหรับ that-- ถ้าผมพิมพ์คำสั่ง ls หนึ่ง time-- มากขึ้น คือว่ามีไดเรกทอรีไม่มีที่เรียกว่า พื้นที่ทำงานภายในของไดเรกทอรี pset1 ของฉัน ฉันจะล้างของฉัน หน้าจออีกครั้งกับการควบคุมลิตร โปรดจำไว้ว่าสิ่งที่ผมพูด ก่อนหน้านี้ แต่ที่เรา สามารถนำทางกลับมาพร้อมกับจุดจุด นั่นเป็นชื่อของไดเรกทอรีผู้ปกครอง ดังนั้นถ้าผมพิมพ์ cd พื้นที่จุด จุดแล้วกด Enter, ตอนนี้ดูที่สิ่งที่เกิดขึ้น พร้อมรับคำสั่งของฉันบอกฉันว่าฉัน กลับมาอยู่ในไดเรกทอรี ~ / พื้นที่ทำงานของฉัน ผมขยับขึ้นระดับหนึ่ง ขอบคุณที่จุดจุด 

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

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

ฉันจะนำทางไปยัง ไดเรกทอรี pset1 ของฉันอีกครั้ง และฉันจะแสดงรายการเนื้อหา และผมก็เห็นว่าฉันมีอีก ไดเรกทอรีที่นั่นเรียกว่าพิเศษ ดังนั้นฉันจะลงไปในแผ่นซีดีพิเศษและ แล้วฉันจะล้างหน้าจอของฉัน 

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

ดังนั้นถ้าฉันเคยต้องการที่จะได้รับกลับไป เพียงไดเรกทอรีบ้านของฉัน, หนอน, ฉันสามารถพิมพ์ cd กับอะไรหลังจากที่มัน Cd ใส่ และตอนนี้ผมอยู่ในตัวหนอน และถ้าผมต้องการที่จะได้รับไปยังพื้นที่ทำงาน ฉันเพียงแค่สามารถพิมพ์ cd พื้นที่ทำงาน และนั่นคือวิธีที่คุณทำงาน เปลี่ยนไดเรกทอรี ภายใน IDE CS50 หรือลินุกซ์ใด ๆ ระบบปฏิบัติการที่บรรทัดคำสั่ง ทั้งหมดขวา หนึ่งต่อไปที่อาจ เข้ามามีประโยชน์เป็น mkdir, ซึ่งเป็นสั้นทำให้ไดเรกทอรี ถ้าต้องการให้สร้างโฟลเดอร์ใหม่ ถ้าคุณคุ้นเคยกับ ระบบปฏิบัติการ GUI ที่ คุณอาจคลิกขวา และแล้วเมื่อเมนูบริบท ปรากฏขึ้นให้เลือกโฟลเดอร์ใหม่ นั่นอาจเป็นวิธีการที่ ที่คุณเคยทำมาก่อน แต่เรายังสามารถสร้าง ไดเรกทอรีที่บรรทัดคำสั่ง ดังนั้นเรากลับมาใน IDE ฉันจะซูมในสถานีและ รายการเนื้อหาของไดเรกทอรีของฉัน อีกครั้งเพียงเพื่อให้เรา กรอบของการอ้างอิง ขอบอกว่าตอนนี้ฉันได้ เสร็จสิ้นการทำงานกับปัญหาการตั้ง 0 และปัญหาการตั้งค่า 1 ดังนั้นผมจึงต้องการที่จะสร้างไดเรกทอรีใหม่ ในการทำงานกับปัญหาชุดที่ 2 ฉันจะทำอย่างไร 

ดีอีกครั้งฉันสามารถคลิกขวาใน ด้านซ้ายมีและเลือกโฟลเดอร์ใหม่ และสร้างไดเรกทอรี pset2 ที่จะทำงานมากเกินไป แต่แล้วผมก็ทำมันได้ที่ บรรทัดคำสั่งสวยได้อย่างรวดเร็ว โดยการพิมพ์ mkdir, space-- ฉัน พิมพ์ลงใน n, but-- pset2 พื้นที่ ถ้าผมกด Enter แล้วฉันรายการ เนื้อหาของไดเรกทอรีของฉันอีกครั้ง ผมเห็นว่าดูตอนนี้ ฉันมีโฟลเดอร์ pset2 และผมสามารถนำทางเข้าไป ว่าการใช้แผ่นซีดีและทำ การทำงานทั้งหมดที่ฉันต้องทำสำหรับ pset2 บังเอิญผมก็จะปรากฏเหนือ ที่นี่อย่างรวดเร็วจริงๆกับต้นไม้ไฟล์ และคุณจะเห็นว่ายังอยู่ใน สำรวจไฟล์กราฟิก เราจะเห็นว่าไดเรกทอรี pset2 นอกจากนี้ยังได้รับการสร้างขึ้นมี และผมก็สามารถนำทางไปยังมัน ใช้ GUI ได้เป็นอย่างดี ในครั้งต่อไปและนั่นคือ อาจจะมาในสะดวก เป็นซีพีซึ่งเป็นระยะสั้นสำหรับการคัดลอก คัดลอกซึ่งแตกต่างจากคนอื่น ๆ คำสั่งที่เราเคยเห็นมาก่อน ใช้เวลาสองข้อโต้แย้งแหล่งที่มาที่ ชื่อของไฟล์ที่คุณต้องการคัดลอก และปลายทางที่คุณ ต้องการคัดลอกไฟล์ไปยัง มันเป็นเรื่องง่ายสวยที่จะคัดลอก ไฟล์เพื่อให้ทำเช่นนั้น 

ดังนั้นเรากลับมาใน IDE ฉันจะแสดงรายการเนื้อหา ของไดเรกทอรีปัจจุบันของฉันด้วยคำสั่ง ls ตอนนี้ขอบอกว่าผมต้องการ ที่จะทำสำเนาของ hello.txt อีกครั้งจากต้นไม้ไฟล์บน ซ้าย, อินเตอร์เฟซแบบกราฟิก ฉันสามารถคลิกขวาบน hello.txt, ทำสำเนาวางสำเนา แต่ผมสามารถทำมันสวยได้อย่างรวดเร็ว ที่บรรทัดคำสั่งเกินไป 

สมมติว่าผมต้องการที่จะคัดลอก hello.txt เพื่อ hi.txt ฉันสามารถ cp, พื้นที่, hello.txt นั่นเป็นแฟ้มแหล่งที่มาของฉันเพื่อที่ว่าทำไม ฉันจะเลือกว่าคนแรก แล้วฉันต้องการที่จะตั้งชื่อ แฟ้มปลายทาง, hi.txt ผมกด Enter และถ้าฉันรายการเนื้อหาของฉัน ไดเรกทอรีอีกครั้งมี hi.txt ฉันทำสำเนาของมัน และในความเป็นจริงถ้าผมไป เข้า hi.txt ผมจะทำได้ เห็นว่ามันจะเป็นที่แน่นอน ซ้ำกันของทุกอย่างที่ มีอยู่ในแฟ้ม hello.txt ของฉัน 

เพื่อให้เป็นวิธีที่คุณคัดลอกไฟล์ แต่ถ้าคุณต้องการที่จะ คัดลอกไดเรกทอรีทั้งหมด? ดังนั้นเป็นครั้งที่สองแล้วลองมาดู ที่สิ่งที่อยู่ในไดเรกทอรี pset0 ของฉัน ถ้าฉัน cd pset0 และรายการเนื้อหา ฉันมีไดเรกทอรีที่เรียกว่าเป็นตัวอย่าง และไฟล์รอยขีดข่วน, scratch.sb2 ดังนั้นที่ดีที่จะรู้ ดังนั้นขอล้างหน้าจอ, และฉันจะกลับไป ไปยังไดเรกทอรีพื้นที่ทำงานของฉันเป็นครั้งที่สอง 

ขอบอกว่าตอนนี้ผมต้องการที่จะ ทำสำเนาของไดเรกทอรี pset0 ของฉัน ฉันไม่สามารถเพียงแค่พูดว่าซีพี pset0 pset3 ตัวอย่างเช่น คุณจะได้รับข้อความนี้แปลก ถนัด pset0 ไดเรกทอรี ทำไมคุณได้รับข้อความที่? ดีก็ปรากฎว่าเมื่อ คุณมีไดเรกทอรีที่ มีสิ่งอื่น ๆ ภายในของมัน คำสั่งซีพีไม่ได้จริงๆ จำเป็นต้องทราบว่าจะทำอย่างไรกับมัน 

เราจำเป็นต้องชัดเจน บอกลินุกซ์, terminal, ฉันต้องการให้คุณคัดลอก ไดเรกทอรี pset0 และสำเนา โฟลเดอร์ที่มีอยู่ภายในทุก ของมันและทุกไฟล์ที่ ที่มีอยู่ภายในของมัน ในคำอื่น ๆ ฉันต้องการให้คุณ ซ้ำลงไปดำน้ำ pset0 และทำสำเนาของทุกสิ่งที่อยู่ในนั้น 

ถ้าผมต้องการที่จะทำสิ่งที่ฉันสามารถทำได้ คือ CP-R, สำหรับ recursive, pset0 pset3 กด Enter ตอนนี้ถ้าฉันรายการ เนื้อหาของไดเรกทอรีของฉัน ผมเห็นมี pset3 ไดเรกทอรีที่ผมสามารถทำงานร่วมกับ และถ้าผมลงในแผ่นซีดี pset3 ในขณะนี้และ แล้วรายการเนื้อหาดู มีตัวอย่างและ scratch.sb2 อีกครั้ง เพื่อให้เป็นเย็นสวย เพื่อให้เป็นวิธีการที่คุณสามารถคัดลอกทั้ง ไดเรกทอรีและไม่เพียงไฟล์เดียว ดังนั้นหากคุณต้องการที่จะคัดลอก ไดเรกทอรีเพียงจำ ที่จะใช้ธง -r เมื่อคุณอยู่ การทำงานร่วมกับคำสั่งที่ซีพี ทั้งหมดขวา ดังนั้นผมจึงได้คัดลอกไฟล์ แต่ ฉันได้กระทำมันโดยไม่ได้ตั้งใจ และตอนนี้ผมต้องการที่จะกำจัดมัน ฉันจะทำอย่างไร อีกครั้งถ้าคุณคุ้นเคย ด้วยอินเตอร์เฟซ GUI ที่ คุณสามารถคลิกขวา และเพียงแค่เลือกลบ และมันจะส่งไปยัง ถังขยะหรือถังรีไซเคิล แต่ที่บรรทัดคำสั่งเรา ก็สามารถพิมพ์ RM สำหรับลบ, แล้วชื่อของ ไฟล์ที่เราต้องการที่จะกำจัด 

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

ดังนั้นขอให้กลับไปที่การ IDE และกำจัดไฟล์ที่ hi.txt ที่ผมสร้างขึ้นนาทีที่ผ่านมาพร้อมสำเนา ดังนั้นเราจึงอยู่ใน IDE และฉันรายการเนื้อหาของไดเรกทอรีของฉัน อีกครั้งเพียงเพื่อให้เรามีบางบริบท ฉันหมายความว่าคุณสามารถเห็นได้ว่ามี hi.txt, ที่ฉันสร้างขึ้นเพียงเล็กน้อยในขณะที่ผ่านมา ตอนนี้ผมต้องการที่จะกำจัดมัน ฉันต้องทำอย่างไร? 

อีกครั้งเพียง rm ดังนั้นผมจึงสามารถพิมพ์ RM hi.txt และกด Enter และมีความเป็นอยู่ RM โปรดใช้ความระมัดระวังมากสำหรับเรา และทำให้แน่ใจว่าเราจริง ต้องการลบไฟล์นี้ คุณต้องการที่จะลบ hi.txt ไฟล์ที่ว่างเปล่าปกติ? นั่นเป็นเช่นเดียวกับการดำเนินงาน ระบบเช่น Windows หรือ Mac ที่คุณอาจจะ คุ้นเคยกับ popping ขึ้น กล่องที่บอกว่าคุณจริงๆ แน่ใจว่าคุณต้องการที่จะทำเช่นนี้ 

ผมค่อนข้างมั่นใจว่าผมต้องการที่จะนี้ ดังนั้นฉันจะพิมพ์ yes-- หรือที่จะทำได้ก็เป็นเพียงแค่ พิมพ์ y-- และกด Enter และถ้าฉันรายการเนื้อหาของฉัน ไดเรกทอรีอีกครั้ง hi.txt จะหายไป ไม่เลวใช่มั้ย? ลองกด L ควบคุมเพียง เพื่อกำจัดทุกสิ่งนี้ และได้รับกลับมาที่เรา ด้านบนของหน้าจอ 

ขณะนี้มีวิธีการ ลัดวงจร RM เพื่อ ว่ามันไม่ได้ขอให้เราคำถามที่ จริงๆเรารู้ว่าเราต้องการ เพื่อกำจัดไฟล์ที่ และเราไม่ได้ต้องการ ที่จะถามคำถาม เราจะทำอย่างนั้นได้อย่างไร? ดีที่เราสามารถระบุ ธงพิเศษเช่นเดียวกับเรา ทำกับซีพีที่เรา สามารถเพิ่มธง -r, คัดลอกซ้ำในไดเรกทอรี มีธงของผู้อื่น สำหรับ RM ซึ่งเป็น -f, ซึ่งก็คือการบังคับ RM เพื่อทำตรง สิ่งที่เรากำลังบอกให้ทำ 

ดังนั้นขอบอกว่าตอนนี้ผมต้องการ เพื่อกำจัดไฟล์ hello.txt ของฉัน ฉันไม่ต้องการที่หนึ่งอย่างใดอย่างหนึ่ง สิ่งที่ฉันจะทำอย่างไร ดีฉันสามารถ rm -f hello.txt อะไรที่คุณคิดว่าเป็น จะเกิดขึ้นที่นี่? มันหายไป ไม่ได้ถามคำถาม และในความเป็นจริงถ้าฉันรายการเนื้อหา ไดเรกทอรีของฉันอีกครั้งก็หายไป มีการยกเลิกไม่ได้ที่นี่ hello.txt จะหายไปและผมก็ไม่ได้ ถามถ้าผมต้องการที่จะลบมัน ถ้าฉันต้องการที่จะกำจัด ของไดเรกทอรีทั้งหมด? วิธีที่คุณทำคือ คล้ายกันมากในการคัดลอก หากคุณต้องการที่จะลบ ไดเรกทอรีคุณไม่เพียงแค่ ต้องการลบไดเรกทอรีที่คุณต้องการ ลบทุกอย่างภายในของมัน และเพื่อให้คุณใช้ -r เพื่อ ซ้ำลบไดเรกทอรี 

ดังนั้นขอ rm -r pset2 ฉันไม่ได้ทำงานจริงใน pset2, ดังนั้นผมจึงสามารถกำจัดไดเรกทอรีที่ ผมกด Enter ฉันต้องการที่จะลบ ไดเรกทอรี pset2? ใช่ฉันทำ. และถ้าฉันรายการเนื้อหาของ ไดเรกทอรีของฉันอีกครั้งก็หายไป ทั้งหมดใช่มั้ย? 

หนึ่งในรูปแบบอื่น ๆ อีกมากมายในรูปแบบนี้ ดังนั้นผมจะล้างหน้าจออีกครั้ง ใส่ทุกอย่างที่อยู่ด้านบน ตีสั่ง ls ตอนนี้ผมต้องการที่จะกำจัด ไดเรกทอรี pset3 ของฉัน และผมรู้ว่าผมต้องการที่จะ กำจัดไดเรกทอรี pset3 ของฉัน ฉันสามารถซ้ำและกวาดต้อน ลบไดเรกทอรี pset3 ของฉัน 

ตอนนี้คุณกำลังจะเป็นจริง ระวังเมื่อคุณกำลังใช้ RM -rf ในขณะที่คุณเขียนโปรแกรมมากขึ้นก็จะ สิ่งที่คุณทำอย่างรวดเร็วจริงๆ และในความเป็นจริงที่ฉันทำมันตลอดเวลา แต่ก็สามารถนำไปสู่​​บาง ผลร้าย ถ้าคุณตั้งใจ ลบสิ่งที่ผิด ดังนั้นผมจึงอยากให้คุณทราบว่า นี้เป็นตัวเลือกที่มีให้คุณ แต่ใช้เท่าที่จำเป็น และใช้ด้วยความระมัดระวัง 

ฉันรู้สำหรับข้อเท็จจริงฉันไม่ได้ทำงาน เกี่ยวกับปัญหาของฉันตั้ง 3 อีกต่อไปดังนั้นฉัน จะได้รับการกำจัดของทุกไฟล์เหล่านั้น และฉันรู้ว่าฉันไม่ต้องการที่จะถาม ทุกครั้งเดียวถ้าผมต้องการที่จะลบ ไฟล์ดังนั้นฉันจะ rm -rf pset3 ไม่ได้ถามฉันว่าฉัน ต้องการที่จะกำจัดมัน ฉันตีสั่ง ls pset3 จะหายไป เพื่อให้เป็นรูปแบบทั้งหมดที่คุณ สามารถใช้ในการกำจัดไฟล์ที่มี RM 

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

ดังนั้นฉันใน pset1 ของฉัน ไดเรกทอรีและฉันได้สังเกตเห็น สิ่งที่ได้ไปผิดเล็ก ๆ น้อย ๆ ผมทำงานเกี่ยวกับปัญหาโลภของฉัน แต่ผมตั้งใจตั้งชื่อมัน GReddy ดังนั้นเมื่อผมพยายามเรียกใช้ผ่าน check50 ก็ไม่ได้ทำงานจริงๆ ฉันจะมีสองตัวเลือก เราสามารถทำในสิ่งที่เราเคยทำมาก่อน ซึ่งก็คือการทำสำเนาของไฟล์ ฉันสามารถคัดลอก greddy.c เพื่อ greedy.c ใช่มั้ย? กด Enter ผมเห็นว่าทั้งสองไฟล์ที่มี แล้วฉันจะ RM, จะลบ greddy.c ที่ได้รับการกำจัดมัน เพื่อที่จะทำงานหลังจากที่ผมยืนยัน ที่ผมอยากจะกำจัดมัน และผมก็มีได้อย่างมีประสิทธิภาพ เปลี่ยนชื่อ greddy.c เพื่อ greedy.c ผมคัดลอกมันแล้ว ลบออกเดิม 

แต่นั่นเป็นกระบวนการหลายขั้นตอน และแน่นอนว่ามีวิธีที่ดีกว่า ในความเป็นจริงมี ดังนั้นขอตีควบคุมลิตร เพียงเพื่อนำกลับมานี้ขึ้น และรายการเนื้อหา ไดเรกทอรีของฉันอีกครั้ง 

ดังนั้นสมมติว่าโอ้ฉันทำผิดพลาด ที่จริงผมไม่อยาก ที่จะเรียก greddy.c แฟ้มที่ ในก้มถลาลงที่ฉันสามารถพิมพ์ ย้ายไป greddy.c greedy.c กด Enter และตอนนี้ฉันไม่ได้มี การคัดลอกและลบมัน ฉันก็สามารถที่จะเปลี่ยนชื่อ ช้อปปิ้งแบบครบวงจร 

ขณะนี้มีจำนวนมากอื่น ๆ สาธารณูปโภคบรรทัดคำสั่งขั้นพื้นฐาน ที่คุณสามารถใช้กับ บรรทัดคำสั่งลินุกซ์ และเราจะพูดคุยมาก ของพวกเขาในอนาคตใน CS50 แต่ตอนนี้แค่เท้าของคุณ เปียกด้วยการทำงานร่วมกับสถานีนี้ สิ่งแวดล้อมเหล่านี้ห้าคำสั่ง ควรจะได้รับคุณสวยไกล ในการนำไปรอบ ๆ และ การทำงานกับไฟล์ใน IDE ของคุณ หรือในสิ่งที่ Linux-based ระบบปฏิบัติการที่คุณกำลังใช้ 

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