В ответ на вопрос, который я задал для SO:« Укажите точку монтирования пути», один респондент предложил использовать stat
для получения имени устройства, связанного с томом данного пути. Это хорошо работает на Linux, но дает сумасшедшие результаты на Mac OS X 10.4. Для моей системы df и mount дают:
cas cas$ df
Filesystem 512-blocks Used Avail Capacity Mounted on
/dev/disk0s3 58342896 49924456 7906440 86% /
devfs 194 194 0 100% /dev
fdesc 2 2 0 100% /dev
<volfs> 1024 1024 0 100% /.vol
automount -nsl [166] 0 0 0 100% /Network
automount -fstab [170] 0 0 0 100% /automount/Servers
automount -static [170] 0 0 0 100% /automount/static
/dev/disk2s1 163577856 23225520 140352336 14% /Volumes/Snapshot
/dev/disk2s2 409404102 5745938 383187960 1% /Volumes/Sparse
cas cas$ mount
/dev/disk0s3 on / (local, journaled)
devfs on /dev (local)
fdesc on /dev (union)
<volfs> on /.vol
automount -nsl [166] on /Network (automounted)
automount -fstab [170] on /automount/Servers (automounted)
automount -static [170] on /automount/static (automounted)
/dev/disk2s1 on /Volumes/Snapshot (local, nodev, nosuid, journaled)
/dev/disk2s2 on /Volumes/Sparse (asynchronous, local, nodev, nosuid)
Попытка получить устройства из точек монтирования, хотя:
cas cas$ df | grep -e/
| awk '{print $NF}'
| while read line; do echo $line $(stat -f"%Sdr" $line); done
/ disk0s3r
/dev ???r
/dev ???r
/.vol ???r
/Network ???r
/automount/Servers ???r
/automount/static ???r
/Volumes/Snapshot disk2s1r
/Volumes/Sparse disk2s2r
Здесь я передаю каждую точку монтирования из df в stat, выводя результаты строки формата "% Sdr", которая должна быть именем устройства: Cf. Страница man stat(1):
The special output specifier S may be used to indicate that the output, if applicable, should be in string format. May be used in combination with: ... dr Display actual device name.
В чем дело? Это ошибка в статистике, или какая-то странная дарвиновская VFS?
Постскриптум Эндрю МакГрегора, попробуйте передать "% Sd" в stat для большей странности. В нем перечислены некоторые явно произвольные подмножества файлов из CWD ...