2016-03-31 12 views

Antwort

1

Die Ausgabe von mount (OSX) ist:

<device_path> on <mount_point> (<type>,<options_list>) 

So ist der alternative Ansatz ist es, den vorhergehenden Raum alles vor dem Wort zu extrahieren on ohne (oder den Raum zu entfernen, wird das Wort on und alles andere das Ende der Zeile):

mount | tail -1 | sed 's/ on .* ([^)]*)$//' 

Obwohl, basierend auf Ihrem Befehl, Sie scheinen in dem Mount-Punkt zu interessieren, nicht die Gerätenamen. In diesem Fall wird es „extrahieren, um die Zeichen zwischen on und type ohne Vorder- und Hinterflächen:

Die ([^)]*) Komponente vermeidet Probleme in Eckfällen Matching (wo der Gerätenamen oder Einhängepunkt enthält Raum, on, Raum) .

+0

I '^' und '$' 'denken, da sowohl in dem' s' Befehl nutzlos ist * 'gierig sind – SLePort

+0

@Kenavoz:... Wie auch immer Sie sich, die Macht der Gewohnheit ist, geeignet ist, die Antwort zu OSX-Ausgabe und änderte den Ausdruck etwas, um die Randfälle zu decken. – isedev

0
mount | tail -1 | sed -e "s/^[^/]*\(.*\) type .*$/\1/g"