В чем разница между файлами
Здравствуйте!
В процессе обработки большого текстового файла столкнулся с тем, что sed
работает с ним не так, как предполагается. Начал копать и в итоге сузил
круг проблемы всего до двух строк. Файл, состоящий из двух этих строк,
обрабатывается sed'ом не так, как предполагается. Я даже содержимое этих
строк изменил, написал в одной просто "ОДИН", в другой - "=ДВА". И все
равно sed работает не так! А другой файл с таким_же_текстом "ОДИН" и
"=ДВА" обрабатывается sed'ом нормально. Может, я туплю, но, пожалуйста,
объясните мне, в чем разница между этими файлами? Команда diff говорит,
что разница есть. Но я ее не понимаю )) Возможно, дело в хитростях
юникода?
$ cat test3
ОДИН
=ДВА
$cat test4
ОДИН
=ДВА
$ sed -e :a -e '$!N;s/\n=/ /;ta' -e 'P;D' test3
ОДИН ДВА
$ sed -e :a -e '$!N;s/\n=/ /;ta' -e 'P;D' test4
ДВА
$ diff --unified test3 test4
--- test3 2009-03-13 23:15:52.000000000 +0300
+++ test4 2009-03-13 23:15:49.000000000 +0300
@@ -1,2 +1,2 @@
-ОДИН
+ОДИН
=ДВА
Сами файлы прикладываю.
--
С уважением,
Алексей Мишустин
ОДИН
=ДВА
ОДИН
=ДВА
Reply to: