получить последнюю букву каждой строки (получить последнюю букву каждой строки)

Модератор: Модераторы разделов

andrejbad
Сообщения: 18
ОС: linux

получить последнюю букву каждой строки

Сообщение andrejbad »

Господа еще один вопрос,
Есть файлик с Н-им количеством строк, мне надо получить последнюю букву каждой строки

Заранее спасибо

andrejbad
Спасибо сказали:
allez
Сообщения: 2223
Статус: Не очень злой админ :-)
ОС: SuSE, CentOS, FreeBSD, Windows

Re: получить последнюю букву каждой строки

Сообщение allez »

grep -o ".$" <file>

P. S. Это вам в учебном заведении на дом задали? ;)
Спасибо сказали:
andrejbad
Сообщения: 18
ОС: linux

Re: получить последнюю букву каждой строки

Сообщение andrejbad »

allez писал(а):
08.12.2008 06:37
grep -o ".$" <file>

P. S. Это вам в учебном заведении на дом задали? ;)


Spasibo,

Opciy "-o" v grep ja znal a wot ".$" net :-( , Ja napisal uzhe ogromnyj skript kotoryj eto delaet, no meny nepokidalo zhuwstwo o tom zhto suzhestwujut boleee prostye metody.

P.S. Zanoszhiwost` ne samaja luzhschaja 4erta
Спасибо сказали:
allez
Сообщения: 2223
Статус: Не очень злой админ :-)
ОС: SuSE, CentOS, FreeBSD, Windows

Re: получить последнюю букву каждой строки

Сообщение allez »

Да завсегда пожалуйста. :)

andrejbad писал(а):
09.12.2008 18:54
P.S. Zanoszhiwost` ne samaja luzhschaja 4erta

А с какого тут боку заносчивость? Мне годика полтора назад в "аську" постучал студент, которому задали точь-в-точь такое же задание: вывести на печать последний символ в каждой строке текстового файла. После того, как вы задали свой вопрос на данном форуме, у меня возникло вполне, на мой взгляд, логичное предположение о том, что вы - тоже студент, не справляющийся с домашним заданием. К слову сказать, ваше незнание основ регулярных выражений (это я про ".$") косвенно мое предположение подтверждает.

P. S. Нежелание учиться, помноженное на жажду халявы - также не самая лучшая черта. ;)

P. P. S. Если мои предположения ошибочны - сообщите об этом, пожалуйста. Буду только рад признать свою неправоту и с удовольствием извинюсь. :)
Спасибо сказали:
andrejbad
Сообщения: 18
ОС: linux

Re: получить последнюю букву каждой строки

Сообщение andrejbad »

Учебное заведение было мною закончено даволно давно в Минске (Инженер Систематехник), Сейчас занимаюсь такими штуками как UGS/SAP
Каюсь, регулярными выражениями я не владею на столько хорошо как бы мне хотелось, но я ими и не так часто пользуюсь, так иногда скриптик написать, плогин для Nagios
Я тоже рад помочь другим если могу на форумах, для того они и нужны. Каждый ИТ-шник обычно хорошо знаком с тематикой в которой он занимается (хотя есть и уникумы) и я ничего не вижу плохова если кто то задаст вопрос по теме с которой он не очень знаком.
Спасибо сказали:
allez
Сообщения: 2223
Статус: Не очень злой админ :-)
ОС: SuSE, CentOS, FreeBSD, Windows

Re: получить последнюю букву каждой строки

Сообщение allez »

andrejbad
С большим опозданием и еще большей радостью признаю себя неправым в своих подозрениях и приношу совершенно искренние извинения. :)
Спасибо сказали:
Аватара пользователя
rm_
Сообщения: 3340
Статус: It's the GNU Age
ОС: Debian

Re: получить последнюю букву каждой строки

Сообщение rm_ »

А я вот тоже не знал про grep .$, я бы сделал вот так:

Код: Выделить всё

rev file.txt | colrm 2

Примите просто как ещё один короткий и работающий вариант. *протягивает зачётку* :)
Спасибо сказали:
Аватара пользователя
ZyX
Сообщения: 355
ОС: Gentoo

Re: получить последнюю букву каждой строки

Сообщение ZyX »

rm_ писал(а):
04.01.2009 17:33
А я вот тоже не знал про grep .$, я бы сделал вот так:

Код: Выделить всё

rev file.txt | colrm 2

Примите просто как ещё один короткий и работающий вариант. *протягивает зачётку* :)

Этот вариант намного быстрее:

zyx@zyx-desktop

(zyx:~/tmp) % echo $(( $(stat --printf "%s" app-office:openoffice-3.0.0:20081221-185207.log) / 1024. / 1024. )) MiB 13.01280689239502 MiB (zyx:~/tmp) % cat app-office:openoffice-3.0.0:20081221-185207.log | wc -l 109880 (zyx:~/tmp) % time ( cat app-office:openoffice-3.0.0:20081221-185207.log | rev | colrm 2 >/dev/null ) (; cat app-office:openoffice-3.0.0:20081221-185207.log | rev | colrm 2 > ; ) 0,68s user 0,04s system 55% cpu 1,305 total (zyx:~/tmp) % time ( cat app-office:openoffice-3.0.0:20081221-185207.log | grep -o ".$" >/dev/null ) (; cat app-office:openoffice-3.0.0:20081221-185207.log | grep -o ".$" > ; ) 131,89s user 0,61s system 98% cpu 2:14,27 total

Так что можно смело ставить «отлично».
Спасибо сказали: