Что означает $ (…) в оболочке? [дубликат]

Вывод mountдолжен быть достоверным. /proc/mounts — это истинный авторитет, но в настоящее время mount использует его, а /etc/mtab — это просто символическая ссылка. Вы можете проверить их сами, чтобы быть уверенным, если хотите. Но я думаю, что файловые системы смонтированы .

Ответ заключается в том, что df отфильтровывает дубликаты файловых систем, такие как монтирование с привязкой. (Порядок, в котором монтируются эти файловые системы, фактически случайный, когда используется systemd).

df каким-то образом может правильно идентифицировать эти два каталога как размещенные в одной и той же физической файловой системе — информация о пространстве для них будет идентичной. Если вы выполните поиск в Интернете, вы найдете ту же жалобу на монтирование df и NFS, о которой сообщается как об ошибках в нескольких дистрибутивах Linux.

Ответом на эти ошибки является то, что если вы хотите показать все точки монтирования, вам нужно df -a.

1
25.11.2018, 16:49
1 ответ

Это подстановка команд синтаксис. Он берет команду в круглых скобках, запускает ее, затем берет вывод (стандартный вывод )этой команды и заменяет его в этой части командной строки. Сложность в том, чтобы полагаться на него в этом примере, двоякая:

  1. поскольку он не заключен в кавычки, результаты будут подвержены расширению имени файла (поэтому, если какая-либо часть example.txt содержит шаблон, соответствующий существующим именам файлов, вы получите эти имена файлов вместо шаблона/строки ), и
  2. результаты разбиваются на слова в соответствии с переменной $IFS. Если example.txt содержит имя файла типа «a filename.txt», то внешний цикл forувидит два параметра--aи filename.txtи, вероятно, сделает не то.

Вы часто видите этот пример, поскольку люди полагаются на то, что содержимое example.txt не содержит шаблонов имен файлов или пробелов (или табуляции ).

Результатом этого однострочника является перебор предполагаемых доменных имен в example.txt и поиск по ним DNS.

2
27.01.2020, 23:16

Теги

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