Войти в систему

Home
    - Создать дневник
    - Написать в дневник
       - Подробный режим

LJ.Rossia.org
    - Новости сайта
    - Общие настройки
    - Sitemap
    - Оплата
    - ljr-fif

Редактировать...
    - Настройки
    - Список друзей
    - Дневник
    - Картинки
    - Пароль
    - Вид дневника

Сообщества

Настроить S2

Помощь
    - Забыли пароль?
    - FAQ
    - Тех. поддержка



Пишет Русскоязычное Linux-сообщество ([info]lj_ru_linux)
@ 2016-05-29 19:12:00


Previous Entry  Add to memories!  Tell a Friend!  Next Entry
regex: \ в конце строки
Как можно  помощью regex отловить (match) косую черту в конце строки?
Дано: имеется файл, в котором последняя строкa заканчиваются символом \
Мне хочется при помощи awk или sed или perl заменить \ или вообще убрать.
Варианты \\$  \\\$ \\\\$ не работают. Вынужден пока довольствоваться некрасивым .$  -- см. ниже:

#!/bin/sh
# removes ", \" at the end of the last line of a file
NofLines=`wc -l $1 | awk '{print $1}'`
bn=`basename $1`
awk "{if (NR==$NofLines) { print gensub(\", .\$\",\"\",\$0) } else print \$0}" $1 > temp-$bn
mv temp-$bn $1


(Читать комментарии) (Добавить комментарий)