извлекать совпадения группы захвата регулярных выражений из файла

Я хочу выполнить действие с именем в командной строке linux (несколько сценариев ca bash также подойдут). Я попробовал следующую команду:

sed 's/href="([^"])"/$1/g' page.html > list.lst

, но, очевидно, она не удалась.

Чтобы быть точным, вот мой ввод:

<link rel="stylesheet" type="text/css" href="style/css/colors.css" />
<link rel="stylesheet" type="text/css" href="style/css/global.css" />
<link rel="stylesheet" type="text/css" href="style/css/icons.css" />

вывод, который я хочу, будет список всех совпадений во входном файле, разделенных запятыми или пробелами:

style/css/colors.css,style/css/global.css,style/css/icons.css

Я думаю, что получил правильное выражение: href = "([^"] *) "

, но я понятия не имею, как выполнить этот. sed будет выполнять поиск / замену, что не совсем то, что я хочу. (напротив, мне нужно только сохранить совпадения и выбросить остальные, а не заменять их)

7
задан BiAiB 26 July 2011 в 14:36
поделиться