Немного неясно, какой вывод вы хотите, но вы всегда можете использовать awk
для анализа информации. Например, если вам нужна информация «Filesytem» и «Mounting on», вы можете использовать с df
:
df | awk '{
for (i=1; i<=NF; i++)
if ($i ~ /^\/Volumes/) {
print $1, substr($0, match($0,/\/Volumes/))
break
}
}'
. Или используя введенные вами данные в файле dfout
, вы можете прочитать файл как:
awk '{
for (i=1; i<=NF; i++)
if ($i ~ /^\/Volumes/) {
print $1, substr($0, print $1, substr($0, match($0,/\/Volumes/)))
break
}
}' dfout
Пример вывода
Используя файл dfout
с вашими данными, вы получите:
/dev/disk8s1 /Volumes/usb drive
/dev/disk6s1 /Volumes/root
/dev/disk2s1 /Volumes/KINGS TON
Если вы нужно больше или меньше каждой записи, вы можете просто вывести любые другие поля, которые вам нравятся, в операторе print
.
Дайте мне знать, если вы хотите, чтобы формат или вывод отличались, и я буду рад помочь в дальнейшем. У меня нет Ma c для тестирования, но используются стандартные функции awk
, а не GNU awk
speci c.