Милосердные повелители sed, вот мой необработанный вывод:
reboot system boot 3.10.0-327.28.3. Sun Jan 10 02:16 - 06:52 (04:36)
reboot system boot 3.10.0-327.28.3. Wed Jan 6 02:00 - 06:52 (4+04:52)
reboot system boot 3.10.0-327.28.3. Sun Jan 3 00:39 - 06:52 (7+06:13)
reboot system boot 3.10.0-327.28.3. Sat Jan 2 02:40 - 06:52 (8+04:12)
reboot system boot 3.10.0-327.28.3. Sat Jan 2 02:39 - 06:52 (8+04:13)
reboot system boot 3.10.0-327.28.3. Wed Dec 30 06:56 - 06:52 (10+23:56)
reboot system boot 3.10.0-327.28.3. Wed Dec 30 02:43 - 03:17 (00:34)
reboot system boot 3.10.0-327.28.3. Wed Dec 30 00:51 - 03:17 (02:26)
reboot system boot 3.10.0-327.28.3. Tue Dec 29 07:14 - 03:17 (20:02)
reboot system boot 3.10.0-327.28.3. Tue Dec 29 05:30 - 07:14 (01:44)
reboot system boot 3.10.0-327.28.3. Tue Dec 29 05:18 - 07:14 (01:55)
Мое желание состоит в том, чтобы удалить скобки в последнем столбце с помощью однострочника sed вместо использования этого неэлегантного и похожего на новичка фрагмента, который почти вопиюще очевиден для использования:
[root@OEL7 ~]# last reboot | sed -e 's/(//g' | sed -e 's/)//g'
reboot system boot 3.10.0-327.28.3. Sun Jan 10 02:16 - 07:12 04:55
reboot system boot 3.10.0-327.28.3. Wed Jan 6 02:00 - 07:12 4+05:11
reboot system boot 3.10.0-327.28.3. Sun Jan 3 00:39 - 07:12 7+06:32
reboot system boot 3.10.0-327.28.3. Sat Jan 2 02:40 - 07:12 8+04:31
reboot system boot 3.10.0-327.28.3. Sat Jan 2 02:39 - 07:12 8+04:32
reboot system boot 3.10.0-327.28.3. Wed Dec 30 06:56 - 07:12 **11+00:15**
reboot system boot 3.10.0-327.28.3. Wed Dec 30 02:43 - 03:17 00:34
reboot system boot 3.10.0-327.28.3. Wed Dec 30 00:51 - 03:17 02:26
reboot system boot 3.10.0-327.28.3. Tue Dec 29 07:14 - 03:17 20:02
reboot system boot 3.10.0-327.28.3. Tue Dec 29 05:30 - 07:14 01:44
reboot system boot 3.10.0-327.28.3. Tue Dec 29 05:18 - 07:14 01:55
Я полагаю, что я провел должную осмотрительность перед публикацией (включая просеивание некоторых из предложенных сообщений перед публикацией этого), но примеры, которые я нашел, не соответствуют моим критериям:
- обязательное использование sed
- добиться результата кратчайшим путем, без пайпинга и т.д.
Однако, если кто-то из вас знает решение для SO, которое я, возможно, пропустил, я был бы бесконечно благодарен за любые URL-адреса, указатели и т. д.
[root@OEL7 ~]# last reboot | sed -E 's/\(([^()]+)\)$/\1/' reboot system boot 3.10.0-327.28.3. Sun Jan 10 02:16 - 07:41 (05:24) reboot system boot 3.10.0-327.28.3. Wed Jan 6 02:00 - 07:41 (4+05:40)
Примите мою искреннюю благодарность за URL-адреса, я найду им хорошее применение. Большое, большое спасибо еще раз. 10.01.2021