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


13

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

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

แต่อาจมีวิธีการอย่างใดอย่างหนึ่งเขียนบัฟเฟอร์ส่งออกของหน้าต่าง terminal ไปยังไฟล์หรือดีกว่าการส่งออกของคำสั่งดำเนินการแล้ว?


ควรจะมีโปรแกรมปะแก้ที่ gnome-terminal เพื่อทำสิ่งนี้ - เพื่อบันทึกบัฟเฟอร์การเลื่อนลงไฟล์ มีอยู่ที่ไหนซักแห่ง แต่ฉันไม่สามารถหาเวอร์ชั่นของ gnome-terminal ที่รวมเข้ากับมันได้ ฉันเชื่อว่ามันเหมือนกับตัวเลือก 'บันทึกเป็นไฟล์' อย่างง่ายไปยังเมนูไฟล์
belacqua

@belacqua คุณเคยค้นหารุ่นที่ได้รับการแก้ไขหรือไม่
Dmitry Pashkevich

คำตอบ:


7

ดูเหมือนว่าคุณจะมีตัวเลือกจำนวนมาก แต่ gnome-terminal ไม่รองรับการบันทึกไฟล์ด้วยตัวเอง

  • คุณสามารถรันscriptคำสั่งก่อนผลลัพธ์ของคุณเพื่อให้บรรลุสิ่งนี้ ดูLaunchapd Q&Aเพิ่มเติม

  • คุณสามารถติดตั้งและใช้เทอร์มินัลอื่นแทน gnome-terminal ซึ่งรองรับการบันทึกผลลัพธ์ทั้งหมดไปยังไฟล์เช่น Putty อาจมีคนอื่น

  • คุณสามารถเน้นข้อความที่คุณต้องการจากนั้นใช้ CTRL-SHIFT-C เพื่อคัดลอกข้อความ


1
เพิ่มเติม: สิ่งที่ฉันได้ค้นพบจนถึงขณะนี้เครื่องมือที่ดีสำหรับวัตถุประสงค์นั้นคือหน้าจอหรือ tmux
NES

1
@NES หากหน้าจอใช้งานได้ Byobu ก็อาจจะเช่นกัน ดัสตินเคิร์กแลนด์ (หนึ่งในนักพัฒนาหลักของ Ubuntu) ได้ทำการปรับปรุงหน้าจอในแพ็คเกจนั้น (ใน repos) แม้ว่าฉันจะไม่ได้ใช้มันเมื่อเร็ว ๆ นี้ - มักจะเป็นจุดสิ้นสุด
belacqua

3
Edit->Select Allในคำพังเพยความช่วยเหลือสามารถขั้วคุณเน้นทั้งหมดที่อยู่ในบัฟเฟอร์
Dmitry Pashkevich

6

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

command | tee filename

เอาต์พุตของคำสั่งถูกแสดงในเทอร์มินัลเช่นเดียวกับในไฟล์


1
ไม่อย่างแน่นอนสิ่งที่ฉันตั้งใจ แต่ก็มีประโยชน์มาก ขอบคุณ
NES

1
นี่เป็นสิ่งที่ OP ต้องการทั้งหมด แต่คุณเพิ่งช่วยฉันได้มาก ขอบคุณ! =)
Malabarba
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.