ตามที่ชื่อแสดงถึงเมื่อฉันกำลังเรียกดูไฟล์ข้อความฉันต้องการทราบสัดส่วนที่ดูในปัจจุบันของไฟล์ข้อความทั้งหมด
ฉันรู้ว่าด้วยตัวเลือก -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