ฉันจะรับคำสั่ง "top" เพื่อตัดเอาต์พุตได้อย่างไร


20

คอลัมน์ "คำสั่ง" ถูกตัดทอนโดยความกว้างของหน้าจอและฉันไม่สามารถเห็นส่วนสุดท้ายของมันได้

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


คำสั่งใดที่สร้างเอาต์พุตของคุณ

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

คุณช่วยอธิบายได้ไหมว่าทำไมไม่ลดขนาดตัวอักษรลง?
Stephen Quan

มันทำงานได้ แต่ไม่เพียงพอสำหรับผมที่จะเห็นสายทั้ง .. บรรทัดคำสั่งค่อนข้างยาว
sureshvv

คำตอบ:


10

top -bcn1 -w512

วิธีการแก้ปัญหาที่สง่างามคือการใช้ตัวเลือก ตามหน้า man ความกว้างสูงสุดคือ 512 อักขระดังนั้นคุณจะต้องใช้โซลูชันอื่นสำหรับสิ่งอื่น ๆ สันนิษฐานว่าคุณต้องการเห็นความยาวเต็มของคำสั่งดังนั้นใช้ตัวเลือก เราจำเป็นต้องทำงานใน "โหมดแบทช์" หรือจะตัดคำสั่งด้วย "+" ต่อไป Batch ชนิดโหมดของการทำให้เป็นระเบียบเพราะมันพิมพ์ออกทุกงานทุกวินาทีเพื่อให้เราสามารถใช้ตัวเลือกที่จะพิมพ์ออกมาเพียงหนึ่งตัวอย่าง-w [number]-ctop-b-n1

ดูหน้าคนด้านบนสำหรับข้อมูลเพิ่มเติม


1
คุณต้องตรวจสอบ man page ในระบบของคุณ topตัวเลือกเหล่านี้ไม่ได้มีอยู่ในทุกรุ่นของ
สกอตต์

21

ฟิลด์คำสั่งจะถูกตัดโดยอัตโนมัติเพื่อให้การอ่านดีขึ้น

คุณต้องวิ่ง

top -c

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


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

ใช่ว่าจะเริ่มต้นด้วย คุณใช้หน้าต่างประเภทใด มันเป็นสถานีคำสั่ง Putty, Dos, Gnome terminal หรือไม่? สิ่งเหล่านี้จะอนุญาตให้คุณเลื่อนในแนวนอน
ผู้ถือแหวน

ไม่เห็นการเลื่อนในแนวนอนใน PuTTY
bbodenmiller

8

ดังที่ Daniel Arndt พูดคุณยังสามารถใช้htopแทน top ทุกวันนี้มีจำหน่ายใน distro ทั้งหมดและให้ตัวเลขที่ดีกว่า (โดยเฉพาะสำหรับการใช้หน่วยความจำ)

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


นี่ไม่ได้ตอบคำถาม แต่เป็นคำแนะนำสำหรับโปรแกรมอื่น htopเป็นโปรแกรมที่ดีแน่นอน แต่คำถามคือเกี่ยวกับผลลัพธ์ของด้านบน โปรดอยู่ในหัวข้อ
drumfire

2
@drumfire ทางเลือกการเสนอที่ถูกต้องสมบูรณ์และในหัวข้อ สิ่งนี้ควรชัดเจนโดยความจริงที่ว่า OP ยอมรับคำตอบนี้มาเกือบสามปีแล้ว
terdon

3

นี่เป็นแฮ็ก แต่คุณสามารถปรับเปลี่ยนพฤติกรรมได้โดยการปรับตัวแปรเชลล์ $ COLUMNS และ $ LINES ก่อนเปิดตัวด้านบน:

export COLUMNS=$((COLUMNS*2))
export LINES=$((LINES/2))
top

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


0

คุณสามารถออกแบบหน้าจอแบทช์ที่มี-b -n 1และpsตัวอย่างเช่น:

while (true)
do
  clear
  top -b -n 1
  ps
  sleep 5
done

นี้จะจัดการแสดง:

  • PID
  • ซีพียู
  • บรรทัดคำสั่งไม่ถูกตัดทอน

0

คุณอาจต้องการลองนี้ นี่จะพิมพ์อินสแตนซ์เดียวเท่านั้นที่topมีความกว้างคงที่และออกเพื่อให้คุณสามารถรับเอาต์พุต

top -n1 -w80

คุณสามารถไพพ์เอาท์พุทไปยังไฟล์

top -n1 -w80 > top_output.txt

0

พยายามเพิ่มความกว้างของเอาต์พุต sreen โดยใช้คำสั่งด้านล่าง

ส่งออก COLUMNS = 197 ด้านบน -u -cbn1> top.output

ที่นี่ 197 เป็นเพียงตัวแปร ลองเพิ่มขึ้นตามความต้องการของคุณและส่งออกรายละเอียดที่คุณต้องการ

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