gianthare: (Default)
gianthare ([personal profile] gianthare) wrote2003-02-13 07:08 pm

Знаете ли вы, что

если написать в vi (это такой текстовый редактор под Юникс)
G3-3dd:w
:n

то он сотрёт три последние строчки файла, сохранит его и откроет следующий файл. А если это занести в Clipboard и потом пэйстить мышкой то это, пожалуй, максимально быстрый спосб стереть последние три строчки из N файлов (N < 10).

UPDATE: Пожалуй, с объяснением будет еще веселей:
G — перейти на последнюю строчку
3 — повторить следующую команду три раза
- — подняться на строчку вверх
3 — см. выше
dd — стереть строчку
:w <enter> — сохранить файл
:n <enter> — открыть для редактирования следующий файл

[identity profile] mishania.livejournal.com 2003-02-13 09:10 am (UTC)(link)
теперь знаю

[identity profile] gianthare.livejournal.com 2003-02-13 09:12 am (UTC)(link)
А вам это поможет в жизни?

[identity profile] mishania.livejournal.com 2003-02-13 11:15 pm (UTC)(link)
нет, я под виндой =О
просто у меня в шеллклиентах (ШеллГвард) и в виме не пашет бекСпейс... вот по этому я его не юзаю... =\
а 2-е у нас на фре сидят, говорят вим рулит 8))) как и фря

[identity profile] gerralt.livejournal.com 2003-02-13 10:22 am (UTC)(link)
За это мы и любим его - за его особую юзер френдливость! :)

[identity profile] gianthare.livejournal.com 2003-02-13 10:44 am (UTC)(link)
А вот и нет - за экспрессивность.

Язык Си сочетает в себе выразительность ассемблера с мощностью ассемблера. ©

[identity profile] motya.livejournal.com 2003-02-13 01:26 pm (UTC)(link)
Пришел Ржевский, весь в белом, и все опошлил...
Итак опошляю: 3- на мой взгляд не нужны. dd в последней строке сотрет ее, а следующий dd сотрет предыдущую, и т.д.

Ну и потом это не спортивно. Надо за полчасика написать скрипт, отладить, сделать защиту от дурака, обобщить на произвольное количество строк, не обязательно с конца, не обязательно строк, с десяток ключей командной строки для всего этого дела... Потом скрипт сам все сделает за полсекунды.
Вот это называется - настоящий юниксоид!

[identity profile] bdbd.livejournal.com 2003-02-13 01:44 pm (UTC)(link)
 

[identity profile] gianthare.livejournal.com 2003-02-14 06:32 am (UTC)(link)
Не, не работает. По-видимому 3dd это "стереть три строки" а не "стереть строку" три раза. Кроме того тщательная проверка показала, что данный sequence стирает не три последние строки, а 4-ую, 3-ью и 2-ую с конца. А чтоб три последние - надо писать 2dd.

[identity profile] motya.livejournal.com 2003-02-14 11:31 am (UTC)(link)
Ой, сорри за выпендреж - беру его назад... :)
Писал из дома, так что проверить не мог.
А может просто реализации немного разные? Я сижу на Sun Solaris, приду на работу - погляжу...