Вопрос такой:есть лог файл , льётся с АТС, в нём присутствует символ с шестнадцатиричным значением 00.
Его нужно както вырезать, удалить.. из-за него не происходит импорт в БДЕсть какие нить средства сделать ето?
приведите пожалуйста пример скриптика к примеру на AWKP.S. Я в програмировании не силён
>Вопрос такой:
>
>есть лог файл , льётся с АТС, в нём присутствует символ с
>шестнадцатиричным значением 00.
>Его нужно както вырезать, удалить.. из-за него не происходит импорт в БД
>
>
>Есть какие нить средства сделать ето?
>приведите пожалуйста пример скриптика к примеру на AWK
>
>P.S. Я в програмировании не силёнесть простенькая утилита tr:
tr -d '\000' < ats.log > ats_to_db.logman tr или tr --help для информации
>есть простенькая утилита tr:
>tr -d '\000' < ats.log > ats_to_db.log
>
>man tr или tr --help для информации
Спасибо, всё получилось...
только несовсем понятно почему 000, я вот пытался ради любопытства удалить скадем символ с шеснадцатиричном кодом 0А задавtr -d '\00А' < ats.log > ats_to_db.log
результатов никаких... в мане и хелпе нанашол... как удалить такй символ ??
>только несовсем понятно почему 000, я вот пытался ради любопытства удалить скадем
>символ с шеснадцатиричном кодом 0А задав
>
>tr -d '\00А' < ats.log > ats_to_db.log
>
>результатов никаких... в мане и хелпе нанашол... как удалить такй символ ??
>'\000' - восьмеричный код (octal value), в мане это есть :)
соответственно для 0x0A следует писать либо '\012' или просто '\n', т.к.
символы 0x0A, 0xOD это распространенные символы то для них есть соотвествующие эскейп-коды: \n и \r соотвественно.tr -d '\n' < ats.log > ats_to_db.log
или
tr -d '\012' < ats.log > ats_to_db.log
>tr -d '\n' < ats.log > ats_to_db.log
>или
>tr -d '\012' < ats.log > ats_to_db.logлучше использовать \n и \r вместо цифровых кодов так всем понятней.
потому что восьмиричная
Спасибо, всё понятно :)