Запишіть рядки у файл із меншої кількості


17

Перебуваючи в, vimя можу записати діапазон рядків з переглянутого файлу в інший файл. Наприклад,

:1,10 w outfile.txt

буде писати рядки з 1 по 10 у outfile.txt.

Чи можу я зробити те ж саме, переглядаючи файл за допомогою less?

Відповіді:


17
10Gmm1G|mcat > outfile.txt

(вводиться всередині less), здається, працює до тих пір, поки вхід не поміститься в одному екрані (у цьому випадку весь вхід outfile.txtчомусь закінчується ).

  • 10G приводить вас до лінії 10
  • mmвстановлює mтам позначку
  • 1G(те саме, що і gв цьому випадку) приводить вас до рядка 1
  • |m труба від поточної лінії для маркування m
  • cat > outfile.txt: це трубопровід до цієї команди.

Мені довелося вставити команду підказки, оскільки введення тексту 10Gпривело мене до 10-го рядка, перш ніж я міг набрати решту, але це справді спрацювало.
eebbesen

2
@eebbesen, добре, що це було. Дивіться мою
редакцію

Дякую за роз’яснення @StephaneChazelas (а також за вашу первинну відповідь) - тепер зрозуміло.
eebbesen

1
геній знову на допомогу :)
Рамеш

4

Ви можете використовувати те, viewщо те самеvi -r


4
Це буде працювати, але для великих файлів я вважаю за краще використовувати less- саме моє розуміння viзмушує весь файл завантажуватися відразу.
eebbesen
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.