sed несколько совпадений, заменяющих первое значение совпадения

#bash #sed

#bash #sed

Вопрос:

У меня есть файл в виде

    File: `/etc/motd'
  Size: 17              Blocks: 16         IO Block: 4096   regular file
Device: fd00h/64768d    Inode: 10125343    Links: 1
Access: (0644/-rw-r--r--)  Uid: (  1340/    root)   Gid: (  1240/    root)
Access: 2019-04-10 09:34:35.000000000  0500
Modify: 2019-03-30 19:22:13.000000000  0500
Change: 2019-03-30 19:22:13.000000000  0500
  

используя sed , я могу извлекать root по желанию, но второе root не отображается отдельно

sed -n 's/.*/(.*))/1/p ; s/.*Gid:.*/(.*))/1/p'

Комментарии:

1. почему бы и нет stat -c $'%Un%G' /etc/motd ?

2. Разумный выбор, пожалуйста, укажите ответ, чтобы я мог принять

Ответ №1:

используйте -c опцию stat для печати имени группы и пользователя, владеющего файлом:

 stat -c $'%Un%G' /etc/motd