ตามที่ชื่อแสดงถึงเมื่อฉันกำลังเรียกดูไฟล์ข้อความฉันต้องการทราบสัดส่วนที่ดูในปัจจุบันของไฟล์ข้อความทั้งหมด
ฉันรู้ว่าด้วยตัวเลือก -N เราสามารถเปิดหมายเลขบรรทัดได้ แต่ฉันจะแสดงหมายเลขบรรทัดของไฟล์ข้อความทั้งหมดให้น้อยลงได้อย่างไร
ขอบคุณ
ตามที่ชื่อแสดงถึงเมื่อฉันกำลังเรียกดูไฟล์ข้อความฉันต้องการทราบสัดส่วนที่ดูในปัจจุบันของไฟล์ข้อความทั้งหมด
ฉันรู้ว่าด้วยตัวเลือก -N เราสามารถเปิดหมายเลขบรรทัดได้ แต่ฉันจะแสดงหมายเลขบรรทัดของไฟล์ข้อความทั้งหมดให้น้อยลงได้อย่างไร
ขอบคุณ
คำตอบ:
หากคุณเปิดไฟล์ที่มีค่าน้อยกว่าการกด Ctrl-g จะแสดงหมายเลขบรรทัดปัจจุบันจำนวนบรรทัดและเปอร์เซ็นต์รวมทั้งที่แสดงด้านล่าง:
เส้น 51-100 / 185 ไบต์ 3228/5886 54% (กด RETURN)
wdiff version1.txt version2.txt | colordiff | less -RMไม่แสดงเปอร์เซ็นต์ แจ้งให้เราทราบหากมีวิธีแก้ปัญหาหรือวิธีแก้ปัญหาสำหรับสิ่งนี้ อัปเดต: โซลูชันคือการเพิ่ม + Gg เหมือนกับคำตอบอื่นที่อธิบายไว้
คุณหมายถึงชอบด้วย-Mสวิตช์?
-mหากไม่จำเป็นต้องใช้หมายเลขบรรทัด
wdiff version1.txt version2.txt | colordiff | less -RMอัปเดต: การแก้ปัญหาคือการเพิ่ม + Gg เหมือนคำตอบอื่นที่อธิบายไว้
เพียงแค่ขยายคำตอบก่อนหน้านี้เล็กน้อย บรรทัดคำสั่ง:
less -M +Gg
ทำต่อไปนี้:
-Mแสดงตำแหน่งปัจจุบันภายในไฟล์ที่พร้อมท์
คำสั่ง+ Gg Run G(ไปที่ส่วนท้ายของไฟล์) และg(กลับไปที่จุดเริ่มต้นของไฟล์)
หากlessกำลังอ่านจาก stdin ซึ่งเกิดขึ้นเมื่อmanแสดงหน้า man จะไม่ทราบจำนวนบรรทัดทั้งหมดในไฟล์ล่วงหน้าเพื่อให้สามารถคำนวณตำแหน่งได้อย่างถูกต้อง ดังนั้นจึง+Ggเป็นสิ่งจำเป็นเพื่อให้lessได้จำนวนบรรทัดทั้งหมดและคำนวณตำแหน่งปัจจุบันเป็นเปอร์เซ็นต์
ฉันพบว่ามีประโยชน์ในการตั้งค่าตัวแปรเหล่านี้ใน~ / .bashrc :
export LESS+='-M'
export MANPAGER='less +Gg'
LESSจะตรวจสอบให้แน่ใจว่าการเรียกทั้งหมดของlessจะแสดงตำแหน่งปัจจุบันบนพรอมต์และMANPAGERจะทำให้มั่นใจได้ว่าlessจะสามารถรับจำนวนบรรทัดทั้งหมดในหน้า man ซึ่งlessจะแสดงบน prompt ดูเหมือนจะมีเหตุผลมากกว่าที่จะไม่รวม+Ggไว้ในLESSเพื่อป้องกันไม่ให้lessพยายามไปจนถึงจุดสิ้นสุดของอินพุต piped ขนาดใหญ่ที่อาจเกิดขึ้น หากจำเป็นคุณสามารถเรียกใช้คำสั่งGและgด้วยตนเองได้เสมอ
Gg