Эти значения не представляют размер в любом случае, но ссылаются на какую-то идентификацию устройства.
Взгляните на страницу проекта документации Linux, где говорится:
Устройства определяются типом, таким как "блок" или "символ", и 'главным' и 'второстепенным' номером. Главный номер используется для категоризации устройства, а минорный номер используется для идентификации конкретного типа. Например, все устройства IDE, подключенные к основному контроллеру имеют главный номер 3. Ведущие и ведомые устройства, а также отдельные разделы определяются с помощью второстепенных номеров. Это два числа, предшествующие дате в следующем примере:
brw-rw---- 1 root disk 3, 0 Mar 15 2002 /dev/hda
brw-rw---- 1 root disk 3, 1 Mar 15 2002 /dev/hda1
brw-rw---- 1 root disk 3, 10 Mar 15 2002 /dev/hda10
brw-rw---- 1 root disk 3, 11 Mar 15 2002 /dev/hda11
brw-rw---- 1 root disk 3, 12 Mar 15 2002 /dev/hda12
brw-rw---- 1 root disk 3, 64 Mar 15 2002 /dev/hdb
brw-rw---- 1 root disk 3, 65 Mar 15 2002 /dev/hdb1
brw-rw---- 1 root disk 22, 0 Mar 15 2002 /dev/hdc
brw-rw---- 1 root disk 22, 64 Mar 15 2002 /dev/hdd
Главный номер для устройств hda и hdb равен 3. Разумеется, для каждого конкретного раздела главный номер меняется. конечно, минорный номер меняется для каждого конкретного раздела. Определение каждой категории главных номеров можно изучить, просмотрев содержимое файла файла /usr/src/linux/include/linux/major.h. В файле devices.txt также документирует мажорные и минорные номера. Он расположен в папке /usr/src/linux/Documentation. Этот файл определяет мажорные номера. Почти все файлы устройств создаются по умолчанию при время установки. Однако вы всегда можете создать устройство с помощью команды mknod или скрипта MAKEDEV, который находится в каталоге /dev сам. Устройства можно создать с помощью этой утилиты, указав имя устройство, которое необходимо создать, тип устройства (блочный или символьный) и главные и второстепенные номера.
Чтобы ваша команда помещалась, просто заключите подстановку команды в двойные кавычки. Например, рассмотрим этот файл base.txt
:
$ cat base.txt
simplegeneric==0.8.1
six==1.10.0
sympy==1.1
Без кавычек команда выдает серию ошибок. С кавычками работает нормально:
$ pip3 freeze | grep "$(cat base.txt)"
simplegeneric==0.8.1
six==1.10.0
sympy==1.1
Еще лучше, если вы не знакомы с синтаксисом регулярных выражений, вероятно, безопаснее использовать параметр -F
, чтобы grep интерпретировал каждую строку в base.txt
как простую строку. Здесь это не имеет значения, но может помочь избежать неожиданностей в будущем:
$ pip3 freeze | grep -F "$(cat base.txt)"
simplegeneric==0.8.1
six==1.10.0
sympy==1.1
Еще лучше (кончик шляпы:Насир Райли ), используйте параметр -f
для чтения строк из файла без необходимости использованияcat
:
$ pip3 freeze | grep -Ff base.txt
simplegeneric==0.8.1
six==1.10.0
sympy==1.1