bash, удаление символа в файле

На самом деле это единственный раздел про unix на этом форуме

Модераторы: /dev/random, Модераторы разделов

Аватара пользователя
tmp13
Сообщения: 986
ОС: openSuse 11.2

bash, удаление символа в файле

Сообщение tmp13 »

Имеется файл lal.txt вида:

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


 KLMN1                                              NUMBER
 KLMN2                                              VARCHAR2(255)

есть скрипт:

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

#!/bin/bash
while read line
do
        if [ "$line" != "" ]
        then
                echo "$line,">>test.txt
        fi
done<lal.txt
exit 0;

в результате в test.txt:

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

KLMN1                                              NUMBER,
KLMN2                                              VARCHAR2(255),

вот... последняя запятая в этом файле совсем не кстати...
в голову приходят 2 варианта
1. если следующая строка пустая то запятую не ставим.
2. в полученном файле удаляем последнюю запятую.

Как реализовать это не понимаю(..

Update)
Туплю... 1 вариант сделал...
но всё таки 2 тоже было бы интересно хоть узнать как делается=)
Красных бей и белых бей!
Вот вам иерархия!
Я люблю тебя за это, милая моя,
Разудалая, хмельная мать моя – Анархия!
Спасибо сказали:
Аватара пользователя
drBatty
Сообщения: 8735
Статус: GPG ID: 4DFBD1D6 дом горит, козёл не видит...
ОС: Slackware-current

Re: bash, удаление символа в файле

Сообщение drBatty »

tmp13 писал(а):
01.12.2009 18:15
2. в полученном файле удаляем последнюю запятую.

sed '$s/,$//' -i test.txt
так что-ли?
tmp13 писал(а):
01.12.2009 18:15
#!/bin/bash
while read line
do
if [ "$line" != "" ]
then
echo "$line,">>test.txt
fi
done<lal.txt
exit 0;

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

#!/bin/sed -rf
$!s/.+/&,/

а лучше так...


ЗЫЖ кстати хороший пример, иллюстрирующий неумение bash'а работать с текстом ;)
http://emulek.blogspot.ru/ Windows Must Die
Учебник по sed зеркало в github

Скоро придёт
Осень
Спасибо сказали:
Аватара пользователя
tmp13
Сообщения: 986
ОС: openSuse 11.2

Re: bash, удаление символа в файле

Сообщение tmp13 »

спасибо попробуем=)
Красных бей и белых бей!
Вот вам иерархия!
Я люблю тебя за это, милая моя,
Разудалая, хмельная мать моя – Анархия!
Спасибо сказали: