Что означает "wc --files0-from = F" в команде linux

965
Jing He

Я прочитал руководство по команде wc, но не смог понять объяснение этого параметра. Пожалуйста помоги.

Официальное объяснение ниже:

--files0-from=F read input from the files specified by NUL-terminated names in file F; If F is - then read names from standard input 
2

1 ответ на вопрос

3
Mike Fitzpatrick

read input from the files specified ... in file F

Вместо того, чтобы указывать имена файлов wcв командной строке, прочитайте их из файла F.

NUL-terminated names

Имена файлов в файле F должны быть разделены символом NUL (байтовое значение 0) вместо символов новой строки, табуляции или пробелов. Это должно правильно обрабатывать имена файлов, которые содержат пробелы.

If F is - then read names from standard input

Вместо указания реального файла F, имена файлов могут быть прочитаны из стандартного ввода, который может быть передан из канала. В этом случае ожидается, что имена файлов по-прежнему будут заканчиваться NUL. Типичным примером этого будетfind ... -printf0 | wc ... --files0-from=-

Как вы можете написать NUL-концевые имена файлов? ivanacorovic 6 лет назад 0
@ivanacorovic, обычно имена файлов, оканчивающиеся NUL, являются выводом другой программы. Например, утилита `find` обычно возвращает результаты, разделенные символами новой строки, но вы можете использовать опцию` -printf0`, чтобы она возвращала результаты, разделенные NUL. Это полезно при передаче имен файлов с пробелами в другую программу (например, `wc` в исходном вопросе), которая обрабатывает пробелы в качестве разделителей по умолчанию. Mike Fitzpatrick 6 лет назад 1

Похожие вопросы