เมื่อคุณรันคำสั่งเทอร์มินัล โดยปกติแล้วจะพิมพ์เอาต์พุตในเทอร์มินัลเพื่อให้คุณสามารถอ่านได้ทันที อย่างไรก็ตาม บางครั้งคุณอาจต้องการบันทึกผลลัพธ์สำหรับการวิเคราะห์ในภายหลังหรือใช้ร่วมกับเครื่องมืออื่น
คุณสามารถทำได้โดยใช้การเปลี่ยนเส้นทางเอาต์พุตบนบรรทัดคำสั่ง เรียนรู้วิธีส่งเอาต์พุตคำสั่งไปยังไฟล์ข้อความบน Windows, Mac และ Linux
เปลี่ยนเส้นทางเอาต์พุตบรรทัดคำสั่งไปยังไฟล์
มีโอเปอเรเตอร์สองตัวที่คุณสามารถใช้เพื่อเปลี่ยนเส้นทางเอาต์พุตคำสั่งไปยังไฟล์: >>และ>สิ่งสำคัญคือคุณต้องเข้าใจความแตกต่างระหว่างโอเปอเรเตอร์ทั้งสองนี้เพื่อหลีกเลี่ยงไม่ให้ข้อมูลสูญหายโดยไม่ได้ตั้งใจ
ไอคอน>จะสร้างไฟล์ใหม่หรือเขียนทับไฟล์เก่าหากมีอยู่แล้ว ตัวดำเนินการ>>ยังสร้างไฟล์ใหม่หากไม่มีอยู่ แต่จะไม่เขียนทับไฟล์ที่มีอยู่ หากมีไฟล์อยู่แล้ว ระบบจะเพิ่มข้อความต่อท้ายไฟล์
หากต้องการเปลี่ยนเส้นทางเอาต์พุตของคำสั่งไปยังไฟล์ ให้ป้อนคำสั่ง จากนั้นระบุ ตัวดำเนินการ >หรือ>>และสุดท้ายระบุเส้นทางไปยังไฟล์ที่คุณต้องการเปลี่ยนเส้นทางเอาต์พุตไป ตัวอย่างเช่น ต่อไปนี้คือวิธีที่คุณสามารถบันทึกเอาต์พุตจากคำสั่ง ls ซึ่งแสดงรายการเนื้อหาของไดเร็กทอรี:
ls > /path/to/file
แทนที่/path/to/fileด้วยพาธแบบเต็มไปยังไฟล์ที่คุณต้องการใช้ คำสั่งจะทำงานโดยไม่โต้ตอบ โดยจัดเก็บเอาต์พุตไว้ในไฟล์ที่คุณระบุ
หากต้องการดูเนื้อหาของไฟล์ในเทอร์มินัล คุณสามารถใช้ คำ สั่งcatอีกครั้ง ให้แทนที่/path/to/fileด้วยพาธแบบเต็มไปยังไฟล์ที่คุณต้องการดู
cat /path/to/file
คุณควรเห็นผลลัพธ์จากคำสั่งในไฟล์ใหม่ของคุณ:
เปลี่ยนเส้นทางผลลัพธ์ของ ls ไปยังไฟล์
ตัวดำเนินการ>จะแทนที่เนื้อหาของไฟล์ที่มีอยู่ หากคุณต้องการบันทึกผลลัพธ์จากหลายคำสั่งเป็นไฟล์เดียว ให้ใช้ ตัวดำเนินการ >>แทน สิ่งนี้จะเพิ่มลงในไฟล์ ดังนั้นคุณจะไม่สูญเสียเอาต์พุตก่อนหน้านี้ที่คุณบันทึกไว้
ตัวอย่างเช่น ลองเพิ่มข้อมูลระบบที่ส่วนท้ายของไฟล์ที่คุณเพิ่งสร้างขึ้น เพียงเรียกใช้uname -a บน Linux/Mac - หรือคำสั่ง ver หากคุณใช้ Windows - และเพิ่ม ตัวดำเนินการ>>พร้อมกับเส้นทางไปยังไฟล์:
uname -a >> /path/to/file
ทำซ้ำขั้นตอนนี้หลาย ๆ ครั้งตามที่คุณต้องการเพื่อเพิ่มเอาต์พุตคำสั่งต่อท้ายไฟล์
ผนวกเอาต์พุตเข้ากับไฟล์
ส่งออกเอาต์พุตไปยังหน้าจอและเปลี่ยนเส้นทางไปยังไฟล์
ตัวดำเนินการ>และ>>ไม่แสดงผลลัพธ์ของคำสั่งบนหน้าจอ แต่เพียงส่งไปยังไฟล์ หากคุณต้องการส่งเอาต์พุตไปยังไฟล์และดูบนหน้าจอ ให้ใช้คำสั่ง tee
หากต้องการใช้คำสั่ง tee ให้ส่งเอาต์พุตจากคำสั่งอื่นไปยังคำสั่งนั้นโดยใช้ตัวดำเนินการไปป์ ซึ่งเป็นแถบแนวตั้ง (|) ตัวอย่างเช่น ต่อไปนี้คือวิธีที่คุณสามารถส่งเอาต์พุตของคำสั่ง ls ไปยังทีโดยใช้ไพพ์:
ls | tee /path/to/output.txt
คำสั่ง tee จะส่งเอาต์พุตนั้นไปยังทั้งหน้าจอและไฟล์ที่คุณระบุ การดำเนินการ นี้จะเขียนทับไฟล์หรือสร้างไฟล์ใหม่หากไม่มีอยู่ เช่นเดียวกับ ตัวดำเนินการ >
หากต้องการใช้คำสั่ง tee เพื่อพิมพ์ผลลัพธ์ลงบนหน้าจอและต่อท้ายไฟล์ ให้เพิ่มแฟ ล็ก -aหน้าพาธของไฟล์ เช่น:
uname -a | tee -a /path/to/output.txt
คุณจะเห็นเอาต์พุตคำสั่งบนหน้าจอ และคุณสามารถใช้ cat เพื่อตรวจสอบว่า tee ได้เพิ่มลงในไฟล์แล้ว:
ผนวกเอาต์พุตเข้ากับไฟล์โดยใช้คำสั่ง tee