ฉันจะเปลี่ยนเส้นทางผลลัพธ์สูงสุดไปยังไฟล์ใน Linux ได้อย่างไร

How Do I Redirect Top Output File Linux




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

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







วิธีที่ 1: การเปลี่ยนเส้นทางเอาต์พุตไฟล์เดียว

สำหรับการใช้การเปลี่ยนเส้นทางของ bash ให้รันสคริปต์ใด ๆ จากนั้นกำหนด > หรือ >> โอเปอเรเตอร์ตามด้วยพาธไฟล์ที่เอาต์พุตควรถูกเปลี่ยนเส้นทาง



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

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



$ลส





ลส > /เส้นทาง/ถึง/ไฟล์

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

ลส > /บ้าน/linuxhint/outputfile



ใช้ไวยากรณ์คำสั่งที่กำหนดเพื่อตรวจสอบเนื้อหาของไฟล์

แมว /เส้นทาง/ถึง/ไฟล์

ตอนนี้ให้เขียนคำสั่งด้านล่างสำหรับการพิมพ์เนื้อหาของไฟล์เอาต์พุตในเทอร์มินัล

$แมว /บ้าน/linuxhint/outputfile

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

uname -ถึง >> /เส้นทาง/ถึง/ไฟล์$uname -ถึง >> /บ้าน/linuxhint/outputfile

$แมว /บ้าน/linuxhint/outputfile

วิธีที่ 2: เปลี่ยนเส้นทางเอาต์พุตของเทอร์มินัลเป็นไฟล์เดียว

ไม่ชอบแนวคิดในการใช้โอเปอเรเตอร์> หรือ >> เพื่อเปลี่ยนเส้นทางเอาต์พุตใช่ไหม ไม่ต้องกังวล! คำสั่งทีอยู่ที่นี่เพื่อช่วยเหลือคุณ

สั่งการ | ที /เส้นทาง/ถึง/ไฟล์ $ลส | ที /บ้าน/linuxhint/outputfile

คำสั่ง tee ที่ระบุด้านล่างจะเขียนทับเนื้อหาไฟล์ด้วยเอาต์พุตของคำสั่งที่คล้ายกับตัวดำเนินการ >

$uname -ถึง | ที-ถึง/บ้าน/linuxhint/outputfile

วิธีที่ 3: คำสั่งด้านบน

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

$สูงสุด-NS -NS 1 >topfile.txt

ผลลัพธ์ทั้งหมดที่เกิดจากการดำเนินการของคำสั่งบนสุดจะถูกเปลี่ยนเส้นทางไปยังไฟล์ที่ระบุ ตอนนี้ เขียนคำสั่ง less เพื่อตรวจสอบเนื้อหาของไฟล์

$น้อยtopfile.txt

แฟล็ก -n จะส่งสแน็ปช็อตเดียวของคำสั่งที่ดำเนินการไปยังไฟล์ที่ระบุ หากต้องการดึงเฉพาะการวนซ้ำครั้งแรก ให้ระบุ 1 หลังแฟล็ก -n

$สูงสุด-NS -NS 1 >top-iteration.txt

ใช้คำสั่ง cat เพื่อดูข้อมูลงานที่รันอยู่

$แมวtop-iteration.txt| กริปงาน

บทสรุป:

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