Как удалить набор специальных символов (см. Вложение) - PullRequest
0 голосов
/ 19 июля 2011

Это специальные символы, я не могу вставить код, потому что форум не поддерживает его. Вот как это выглядит в формате кода: [32; 1m

Куб (первый символ) - это стрелка слева в файле (см. Ссылки выше). Вот изображение персонажа, как оно выглядит. Смотрите файл: http://www.dodaj.rs/f/2u/ar/3B1Q7J4Q/sample.jpg А вот вложение файла состоит из того, что я хочу удалить: http://hotfile.com/dl/124448134/58e08a0/File.log.html Вот полный файл:

[32;1m/var/log/daemon.log file is rotated1...[0m
[32;1m/var/log/daemon.log file is rotated2...[0m
[37;1m/var/log/daemon.log file is rotated3...[0m
[35;1m/var/log/daemon.log file is rotated3...[0m 
[33;1mhello[0m
[33;1mthis is sample[0m 
[33;1mwhats up?[0m

Я хочу удалить все ненужные символы и вывести:

/var/log/daemon.log file is rotated1...
/var/log/daemon.log file is rotated2...
/var/log/daemon.log file is rotated3...
/var/log/daemon.log file is rotated3...
hello
this is sample
whats up?

Я пытался удалить специальные символы с помощью sed, например:

cat File.log | sed 's/[!@#\$%^&*()]//g' | sed -e 's/37;1m//g' > output.log

но это ничего не делает. Может кто-нибудь, пожалуйста, напишите мне этот код, который делает то, что мне нужно? Спасибо.

РЕДАКТИРОВАТЬ: После публикации сообщения стрелку не видно на форуме ...

Ответы [ 2 ]

1 голос
/ 19 июля 2011
sed -e 's/[[:cntrl:]]//g' -e 's/\[32;1m//g' -e 's/\[33;1m//g' -e 's/\[35;1m//g' -e 's/\[37;1m//g' -e 's/\[0m//g'
0 голосов
/ 19 июля 2011
echo '[32;1m/var/log/daemon.log file is rotated1...[0m' | awk -F'1m' '{sub("\[0m","",$2);print $2}'

/ var / log / daemon.log файл вращается1 ...

...