Вероятно, это можно немного оптимизировать, но вы можете использовать:
system_profiler SPInstallHistoryDataType | grep -A 4 "macOS\|Security" | grep "macOS\|Security\|Install Date" | tr '\n' ' ' | sed -e 's/[AP]M/&\
/g' | sed -e 's/Install Date://g' | tr -s ' '
Чтобы разобраться в этом немного, вы grep для 'macOS' и 'Security' и позволяете вернуться следующим 4 строкам.
Затем вы передаете это через grep для 'macOS', 'Security' и 'Install Date', так что вы получите только первую строку и строку с датой.
Затем вы передаете его через tr (translate) и превращаете все символы новой строки в пробелы.
Затем вы ищете AM и PM и добавляете новую строку после (в этом случае я не могу использовать команду sed 'a' [append], поэтому в середине этой команды есть действительный символ новой строки)
Затем вы передаете его через sed снова, чтобы удалить «Дата установки:»
И, наконец, вы снова передаете его через tr, чтобы превратить несколько пробелов в один пробел, чтобы сделать его более читабельным.
Выходные данные выглядят так:
macOS High Sierra 10.13.4 Update: 4/6/18, 12:03 PM
Security Update 2018-001: 5/11/18, 2:59 PM
Security Update 2018-001: 5/11/18, 3:04 PM
macOS High Sierra 10.13.5 Update: 6/20/18, 10:32 AM
Вам нужно будет сделать больше работы, если вы хотите изменить формат даты. Но, по крайней мере, это может помочь вам начать.