Почему команда " wc " говорит, что у меня есть только одна строка в файле, в то время как на самом деле их действительно две?
Взгляните на этот пример пожалуйста:
$ cat < demo
man
car$
$
$ od -x < demo
0000000 616d 0a6e 6163 0072
0000007
$
$ wc < demo
1 2 7
Как вы можете видеть, у меня там есть 3 символа ( man
: 6d 61 6e), за которыми следует новая строка ( \n
: 0a), а затем еще три ( car
: 63 61 75), заканчивающиеся нулевым символом (00). Ясно, что в этом файле есть две строки, но команда wc сообщает, что файл получил только одну. Что это дает? Или вы думаете, что для того, чтобы квалифицироваться как строка в Unix, вы должны быть завершены символом новой строки? Нуль не считается?
Ответы - Почему команда " wc " говорит, что у меня есть только одна строка в файле, в то время как на самом деле их действительно две? / Why is the "wc" command saying that I've got only one line in a file while in fact there are really two?

03.10.2016 02:36:32
Или вы думаете, что для того, чтобы квалифицироваться как строка в Unix, вы должны быть заканчивается символом новой строки?
На самом деле, да-даже POSIX
говорит, что:
Утилита wc считывает один или несколько входных файлов и по умолчанию, запишите количество новых строк , слов и байтов, содержащихся в каждой строке. входной файл к стандартному выходу.

