The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]

форумы  помощь  поиск  регистрация  майллист  ВХОД  слежка  RSS
"Удаление символа с шестнадцатиричным значением 00 "
Вариант для распечатки  
Пред. тема | След. тема 
Форумы Программирование под UNIX (Public)
Изначальное сообщение [Проследить за развитием треда]

"Удаление символа с шестнадцатиричным значением 00 "  
Сообщение от zxprsl (ok) on 20-Апр-07, 07:58 
Вопрос такой:

есть лог файл , льётся с АТС, в нём присутствует символ с шестнадцатиричным значением 00.
Его нужно както вырезать, удалить.. из-за него не происходит импорт в БД

Есть какие нить средства сделать ето?
приведите пожалуйста пример скриптика к примеру на AWK

P.S. Я в програмировании не силён

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

 Оглавление

Сообщения по теме [Сортировка по времени, UBB]


1. "Удаление символа с шестнадцатиричным значением 00 "  
Сообщение от vic (??) on 20-Апр-07, 08:24 
>Вопрос такой:
>
>есть лог файл , льётся с АТС, в нём присутствует символ с
>шестнадцатиричным значением 00.
>Его нужно както вырезать, удалить.. из-за него не происходит импорт в БД
>
>
>Есть какие нить средства сделать ето?
>приведите пожалуйста пример скриптика к примеру на AWK
>
>P.S. Я в програмировании не силён

есть простенькая утилита tr:
tr -d '\000' < ats.log > ats_to_db.log

man tr или tr --help для информации

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

2. "Удаление символа с шестнадцатиричным значением 00 "  
Сообщение от zxprsl (ok) on 20-Апр-07, 09:38 

>есть простенькая утилита 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

результатов никаких... в мане и хелпе нанашол... как удалить такй символ ??

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

3. "Удаление символа с шестнадцатиричным значением 00 "  
Сообщение от vic (??) on 20-Апр-07, 10:02 
>только несовсем понятно почему 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

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

5. "Удаление символа с шестнадцатиричным значением 00 "  
Сообщение от vic (??) on 20-Апр-07, 10:04 
>tr -d '\n' < ats.log > ats_to_db.log
>или
>tr -d '\012' < ats.log > ats_to_db.log

лучше использовать \n и \r вместо цифровых кодов так всем понятней.

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

4. "Удаление символа с шестнадцатиричным значением 00 "  
Сообщение от pavel_simple (ok) on 20-Апр-07, 10:03 
потому что восьмиричная

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

6. "Удаление символа с шестнадцатиричным значением 00 "  
Сообщение от zxprsl (ok) on 20-Апр-07, 11:55 
Спасибо, всё понятно :)
Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

Архив | Удалить

Индекс форумов | Темы | Пред. тема | След. тема
Оцените тред (1=ужас, 5=супер)? [ 1 | 2 | 3 | 4 | 5 ] [Рекомендовать для помещения в FAQ]




Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру