nixp.ru v3.0

24 января 2017,
вторник,
18:12:23 MSK

DevOps с компанией «Флант»
Аватар пользователя metal
metal написал 30 января 2008 года в 17:56 (422 просмотра) Ведет себя как мужчина; открыл 31 тему в форуме, оставил 1547 комментариев на сайте.

sed умеет манипулировать номерами строк? На пример мне нужно удалить все строки кроме последней. Сколько строк всего я не знаю, можно это сделать без использования других утилит?

Anarchist

Говно вопрос.

Вот что значит школу жизни прошёл заочно.

Эх, посадить бы тебя на месяцок за машину с единственным текстовым редактором ed, ты бы узнал почём фунт лиха… :)

Короче, конкретно по данному вопросу:

Исправляю формулировку: не удалить все строки кроме последней, а вывести последнюю строку.

В теорминологии ed/vi/vim — '$’, команда вывода — ЕМНИП 'p’.

ЗЫ: Почему не 'tail’?

metal

Я уже догадался исползовать tail:) Но все-таки, в целях повышения образованости, манипулировать нормерами строк как я понимаю он не умеет?

pol

умеет

http://www.opennet.ru/base/dev/sed1line.txt.html

Anarchist
metal
Я уже догадался исползовать tail:) Но все-таки, в целях повышения образованости, манипулировать нормерами строк как я понимаю он не умеет?

Умеет.

Точно также, как и ed.

Точнее — умеет манипулировать с конкретными номерами строк (или специальными значениями типа символа обозначающего последнюю строку).

Можно ли вычислять номера строк — не знаю.

metal
pol
умеет

http://www.opennet.ru/base/dev/sed1line.txt.html

Спасибо, чуть помогло разобраться. Но до хорошего владения далеко.

metal
Anarchist
Можно ли вычислять номера строк — не знаю.

Похоже все-таки нельзя. Но можно хитро ими манипулировать.

myst

Номера строк можно вычислять. Можно даже зацикливаться. man sed, info sed.

ecobeingecobeing.ru
Экология и вегетарианство на благо всем живым существам Планеты.