bash power
Jun. 23rd, 2004 11:31 pmСкрипт ниже рубит файл на блоки, начинающиеся с Item-Id: и записывает в отдельные файлы.
Не идеален по скорости работы, но для небольших дампов из Коммунивера подходит.
cat items.dmp | while read f; do
if echo $f | grep -q ^Item-Id; then
id=`echo $f|sed "s/Item-Id: //"`;
echo $id;
echo $f > $id.dmp;
else
echo $f >> $id.dmp;
fi;
done;
UPDATE:
не понял, как заставить эту конструкцию сохранять leading spaces :(
Не идеален по скорости работы, но для небольших дампов из Коммунивера подходит.
cat items.dmp | while read f; do
if echo $f | grep -q ^Item-Id; then
id=`echo $f|sed "s/Item-Id: //"`;
echo $id;
echo $f > $id.dmp;
else
echo $f >> $id.dmp;
fi;
done;
UPDATE:
не понял, как заставить эту конструкцию сохранять leading spaces :(