Чи можна менше показати пропоновану частину текстового файлу?


18

Як випливає з назви, під час перегляду текстового файлу я хотів би знати поточну частину перегляду всього текстового файлу.

Я знаю, що за допомогою параметра -N ми могли б включити номери рядків, але як я можу змусити менше відображати номер рядка всього текстового файлу?

Спасибі.

Відповіді:


19

Якщо ви відкриєте файл з меншим натисканням клавіші Ctrl-g, відображатиметься номер поточного рядка, загальний рядок та відсоток, а також показано нижче:

рядки 51-100 / 185 байт 3228/5886 54% (натисніть RETURN)


1
спасибі.послідуючи сторінку чоловіка, вдається знайти її і отримати інші дві рівні команди ": f" і "=". вибачте за це.
Jichao

1
На жаль, це не працює через труби, ні з параметром -M або -m з іншої відповіді. Наприклад wdiff version1.txt version2.txt | colordiff | less -RM, не показує відсоток. Повідомте мене, чи є хтось для цього рішення чи рішення. Оновлення: рішення полягає в тому, щоб додати + Gg, як пояснено іншою відповіддю.
baptx

18

Ви маєте на увазі, як із -Mперемикачем?


Саме цього я хочу!
Jichao

Або -mякщо номер рядка не потрібен.
Франклін Ю

1
Чи маєте ви уявлення, чи є рішення чи рішення для відображення відсотка при використанні труб? Наприклад, я не бачу відсотка кольорового розходження за допомогою цієї команди: wdiff version1.txt version2.txt | colordiff | less -RMОновлення: рішення полягає в тому, щоб додати + Gg, як пояснено іншою відповіддю.
baptx

6

less -M +Gg

для не дуже великих файлів це нормально, тому що +G( Gкоманда) триває до кінця файлу


1
Чудово, $MANPAGERхоча! Див man man.
Том Хейл

Чудово colordiffтакож! Напр .:wdiff version1.txt version2.txt | colordiff | less -RM +Gg
baptx

4

Просто розширюємо біт на попередні відповіді. Командний рядок:

less -M +Gg

робить наступне:

-M Показує поточне положення у файлі у підказці + команди Gg Run G(перехід до кінця файлу) та g(повернення до початку файлу)

Якщо lessчитається з stdin, що відбувається, коли manвідображається чоловіча сторінка, вона не знає загальної кількості рядків у файлі заздалегідь, щоб він міг правильно обчислити своє положення. Тому +Ggнеобхідно, щоб lessможна було отримати загальну кількість рядків, і таким чином обчислити поточну позицію у відсотках.

Мені здається корисним встановити ці змінні в ~ / .bashrc :

export LESS+='-M'
export MANPAGER='less +Gg'

LESSгарантуватиме, що всі виклики програми lessпоказуватиме поточну позицію в підказці, а MANPAGERтакож забезпечить lessможливість отримати загальну кількість рядків на підручній сторінці, яка lessпотім відображатиметься у підказці. Здавалося б розумніше НЕ включати +Ggв , LESSщоб запобігти lessвід спроб йти до кінця потенційно великого введення централізованого. Якщо це необхідно, завжди можна виконувати команди Gта gвручну.


+1 для ручного способу, натиснітьGg
wisbucky

Чому у вашому прикладі поставити знак плюс "менше"? Чи не повинно бути достатньо просто написати "експортувати менше" М "?
дб

@db, LESS + = '- M' додасть опцію -M до тих варіантів, які раніше були встановлені для МЕНШЕ
Paulo Marcel Coelho Aragão
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.