LINUX.ORG.RU

Сообщения buganych

 

Увеличить число потоков обработки текста

Форум — Development

Здравствуйте, коллеги. Подскажите. пожалуйста, мне нужно обрабатывать огромные массивы текстовой информации, и под это выделен отдельный сервер с 8 ядрами процессора.

При выполнении скрипта

cat rphost*/*.log | 
sed -r '/^p_[0-9]+: /d' |  
perl -pe 's/\xef\xbb\xbf//g; s/\n/@/g; s/\s/ /g; s/^[0-9]+:[0-9]+\.[0-9]+-[0-9]+,Context,.,Context=/,Context=/; s/#tt[0-9]+/#tt/g; s/^[0-9]+:[0-9]+.[0-9]+-.*Sql=/\n/; s/,Rows.*Context/Context/g; s/\?//g; s/.,Context=/|/g' |
perl -pe 's/\"//g' | perl -pe "s/\'//g" |
gawk -F'|' '{if ($2 !~ /^$/) {Req[$1]=$2}} END {for (i in Req) print Req[i]"|"i}'> Res.txt

Обнаружил, что так и не смог нормально утилизировать процессор, а процессов cat или perl не более четырех.

Работаю под виндой. Можно ли увеличить число потоков обработки или ускорить как-нибудь обработку? Единомоментно необходиом обрабатывать примерно 800Гб текста

 

buganych
()

bash sed awk Заменить подстроку на найденное значение из другого файла

Форум — Development

Здравствуйте, товарищи. Столкнулся с проблемой, которую никак не могу понять, как решать. Есть файл с большим набором строк вида: {20190620150637,N, {0,0},48,26,5,19865,2937,W,«Значения до изменения: Склад: Ск0120 ДатаФиксации: 01.01.2018 0:00:00 Установленные значения: »,0, {«R»,65:8106005056a95b8211e8947b9c4dea27},«Маффины OPS! 300г с нач.Вареная сгущенка»,1,6,6,2184867,0, {0} }, ...

Файл инструкций содержит строки вида: {4,«Данные.Проведение»,2937}, {1,4c1c4d12-61b2-4576-a860-04e815678417,«Обмен»,48}, ...

Мне нужно, чтобы при парсинге этого файла я смог значение из исходного файла заменить на значение файла-инструкций. Например, 48 в исходной строке заменить на Данные.Проведение, 2937 заменить на Обмен

Что я делаю: Скриптом нормализую исходный файл к строке выше, осуществляю поиск необходимого параметра и кладу в промежуточный файл 1.txt для примера for file in ./*.lgp; do echo $file; cat $file | sed -e 's/\n/" «/g' -e 's/{[0-9]\{14\}/\n&/g'|grep „2940,W“|grep „К006“ >> 1.txt ; done;

Потом начинаю парсить промежуточный файл с помощью awk cat 1.txt|awk -F',' '{print $4}' а дальше ни в какую не могу понять, как мне связать $4 и строку скрипт cat 1cv8.lgf| grep »{1,«| sed -e 's/{1,//' -e „s/},//“ -e 's/\»//g'|awk -F',' '{print $2}'

Прошу не кидать тапками я только начал постигать баш скрипты для анализа больших данных

 ,

buganych
()

Как пройти по ссылке

Форум — Development

Подскажите, пожалуйста, как мне реализовать переход по ссылке если она имеют вид: «/home/user/Сегодня Молчановский район приглашает горожан на ярмарку». Bash пишет что нет каталога Сегодня, хотя я ему прямо пытаюсь прописать название каталога полностью.

buganych
()

Подсчет символов в файле

Форум — Development

Ребят, подскажите, пожалуйста как подсчитать количество символов в файле? wc -m $filename выдает 213 символов, Openoffice 209. Всего 6 текстовых файлов и ни в одном не показывает правильно. Я не прошу готовых решений, подскажите хотя бы что почитать на эту тему.

Текст одного из файлов: По укороченному маршруту данный транспорт будет курсировать 24 и 25 сентября с 10:00 до 16:00. Об этом сообщила пресс-служба мэрии. Ограничение связано с проведением ремонта плитки в районе кинотеатра Киномакс.

buganych
()

программа вывода процента встречаемости слов в тексте

Форум — Development

подскажите пожалуйста как дописать данный скрипт, чтобы он подсчитывал процент встречаемости слова в тексте, а не их количество? заранее огромное спасибо!

#!/bin/bash ARGS=1 if [ $# -ne «$ARGS» ] # проверка на колво аргументов then echo «Порядок использования: `basename $0` filename» exit fi

sed -e 's/\.//g' -e 's/ /\ /g' «$1» | tr 'A-Z' 'a-z' | sort | uniq -c | sort -nr

exit 0

buganych
()

RSS подписка на новые темы