Фев 272011
 

linux обработка текстовых файлов
На работе клиенты достали приносить зарплатные списки в некорректном формате, пришлось написать скрипт на обработку этих списков.
добавляем его в кроновскую таблицу или в сам фаел крона , что бы была проверка файлов по рабочим дням календаря и каждые 30 минут.

#nano /etc/crontab
$ crontab -e
*/30 * * * 1-5 sh /home/bagas/convert

#!/bin/bash
cd /home/bagas/ЗП/
# сортировка по разширению
for f in *.txt;
do
# обработка файлов, удаление из них пробелов.
sed -i -e 's/[ \\\/\[]//g' -e 's/]//g' $f;
#перекодирование файла в dos кодировку.
enca -x CP866 $f
done;
exit 0

Вот еще способ переконвертировать файлы в нужную нам кодировку

<pre>find /home/bagas/ЗП -depth -type f -iname ‘*.txt’  -exec iconv -f cp866 -t utf8 {} -o {}.new \;</pre>

find /home/bagas/ЗП — указываем директорию для обработки.

-depth -type f -iname ‘*.txt’ — выборка по разширению файлов.

-exec iconv — выполняем над найденными нами файлами команду iconv

-f cp866 -t utf8 {} — нужная нам кодировка.

-o {}.new \; — выделяем фаел.

 

 Leave a Reply

(required)

(required)

36 Запросов к базе. 0,367 Генерации страницы, 36MB Использование памяти.
Вы зашли с IP: 54.198.108.19