<ก่อนหน้านี้ | Contents | ถัดไป>
432
5
555
567
5.4 สรุป
ในบทนี้ เราได้เรียนรู้ว่าคำสั่งต่างๆ สามารถเชื่อมโยงถึงกันได้อย่างไร และการป้อนข้อมูลจากคำสั่งหนึ่งสามารถใช้เป็นเอาต์พุตสำหรับคำสั่งอื่นได้อย่างไร
การเปลี่ยนเส้นทางอินพุต/เอาต์พุตเป็นงานทั่วไปบนเครื่อง UNIX และ Linux กลไกอันทรงพลังนี้ช่วยให้สามารถใช้ส่วนประกอบที่สร้างจาก UNIX ได้อย่างยืดหยุ่น
การเปลี่ยนเส้นทางที่ใช้บ่อยที่สุดคือ > และ |. อ้างถึงภาคผนวก C สำหรับภาพรวมของคำสั่งการเปลี่ยนเส้นทางและโครงสร้างเชลล์อื่นๆ
ตารางที่ 5-1. คำสั่งใหม่ในบทที่ 5: การเปลี่ยนเส้นทาง I/O
คำสั่ง | ความหมาย |
ข้อมูล | แสดงข้อมูลเวลาและวันที่ |
เซ็ต | กำหนดค่าตัวเลือกเชลล์ |
ประเภท | จัดเรียงบรรทัดข้อความ |
มีเอกลักษณ์ | ลบบรรทัดที่ซ้ำกันออกจากไฟล์ที่เรียงลำดับ |
5.5. แบบฝึกหัด
แบบฝึกหัดเหล่านี้ให้ตัวอย่างเพิ่มเติมเกี่ยวกับวิธีการรวมคำสั่ง เป้าหมายหลักคือการลองใช้ เข้าสู่
คีย์ให้น้อยที่สุด
แบบฝึกหัดทั้งหมดทำโดยใช้ ID ผู้ใช้ปกติ เพื่อสร้างข้อผิดพลาดบางอย่าง ในขณะที่คุณอยู่ที่นี่อย่าลืมอ่านหน้าคนเหล่านั้น!
• ใช้ ตัด คำสั่งบนเอาต์พุตของรายการไดเร็กทอรีแบบยาวเพื่อแสดงเฉพาะสิทธิ์ของไฟล์ จากนั้นไพพ์เอาต์พุตนี้ไปที่ ประเภท และ มีเอกลักษณ์ เพื่อกรองเส้นคู่ใดๆ จากนั้นใช้ wc เพื่อนับประเภทการอนุญาตต่างๆ ในไดเร็กทอรีนี้
• ใส่ผลลัพธ์ของ ข้อมูล ในไฟล์. ผนวกผลลัพธ์ของ ls ไปที่ไฟล์นี้ ส่งไฟล์นี้ไปยังเมลบ็อกซ์ในเครื่องของคุณ (ไม่ต้องระบุอะไรเลย <@โดเมน>ชื่อผู้ใช้เท่านั้นที่จะทำ) เมื่อใช้ Bash คุณจะเห็นการแจ้งเตือนเมลใหม่เมื่อสำเร็จ
• รายการอุปกรณ์ใน / dev ซึ่งปัจจุบันใช้โดย UID ของคุณ ท่อผ่าน น้อยลง เพื่อดูอย่างถูกต้อง
• ออกคำสั่งต่อไปนี้ในฐานะผู้ใช้ที่ไม่มีสิทธิพิเศษ กำหนดอินพุต เอาต์พุต และข้อผิดพลาดมาตรฐานสำหรับแต่ละคำสั่ง
♦ แมว ไฟล์ไม่มีอยู่
♦ ไฟล์ / sbin / ifconfig
♦ grep ราก /etc/passwd /etc/nofiles > ผลลัพธ์ที่ยอดเยี่ยม
♦ /etc/init.d/sshd เริ่มต้น > /var/tmp/เอาต์พุต
♦ /etc/init.d/crond เริ่มต้น > /var/tmp/เอาต์พุต 2> & 1
♦ ตอนนี้ตรวจสอบผลลัพธ์ของคุณโดยออกคำสั่งอีกครั้ง ตอนนี้เปลี่ยนเส้นทาง standardoutput ไปยังไฟล์ /var/tmp/เอาต์พุต และข้อผิดพลาดมาตรฐานของไฟล์ /var/tmp/ข้อผิดพลาด.
• คุณกำลังทำงานอยู่กี่กระบวนการ?
• มีไฟล์ที่มองไม่เห็นอยู่ในโฮมไดเร็กตอรี่ของคุณกี่ไฟล์?
• ใช้ ค้นหา เพื่อค้นหาเอกสารเกี่ยวกับเคอร์เนล
• ค้นหาไฟล์ที่มีรายการต่อไปนี้:
ราก: x: 0: 0: ราก / ราก: / bin / ทุบตี
และอันนี้:
ระบบ: รูท
ระบบ: รูท
• ดูว่าเกิดอะไรขึ้นเมื่อออกคำสั่งนี้:
> เวลา; วันที่ >> เวลา; แมว < เวลา
• คุณจะใช้คำสั่งใดตรวจสอบว่าสคริปต์ใดใน /etc/init.d เริ่มกระบวนการที่กำหนด?