sed добавить путь к концу поиска по шаблону линии

Хотелось бы добавить переменные пути к концу строки в определенной строке с шаблоном поиска и добавить строку «Defaults secure_path», которую я хочу добавить :/etc/bla/foo/

файл,

имя файла

 # asdf # lkaj # asdah Defaults secure_path = /sbin:/bin:/usr/sbin:/usr/bin ## safdafdhdahdabfdabf ## Aedhadhfdahdahadhda 

Попытка поиска по шаблону «Defaults secure_path» и добавление в конец строки:

 sed '/^Defaults secure_path = / s/$/ :/etc/bla/foo/' filename 

Но, получил ошибку:

 sed -e expression #1, char 38: unknown option to `s' 

Вы можете использовать команду awk и добавить ее.

 bash-4.1$ cat filename # asdf # lkaj # asdah Defaults secure_path = /sbin:/bin:/usr/sbin:/usr/bin ## safdafdhdahdabfdabf ## Aedhadhfdahdahadhda bash-4.1$ bash-4.1$ awk '$0~/Defaults/{$0=$0":/etc/bla/foo/"}1' filename # asdf # lkaj # asdah Defaults secure_path = /sbin:/bin:/usr/sbin:/usr/bin:/etc/bla/foo/ ## safdafdhdahdabfdabf ## Aedhadhfdahdahadhda 

эта команда awk ищет шаблон «Значения по умолчанию» и добавляет значение в конце строки.

используя команду sed

 bash-4.1$ sed "s?\(Defaults.*\)?\1:/etc/bla/foo/?" filename # asdf # lkaj # asdah Defaults secure_path = /sbin:/bin:/usr/sbin:/usr/bin:/etc/bla/foo/ ## safdafdhdahdabfdabf ## Aedhadhfdahdahadhda