Нижеследующее немного уродливо, но, кажется, делает то, что вы хотите:
cat prod_database.sql | grep -Ev "<a href=\".*\">.*<\/a>" | grep -E "<.*=\"http:" | sed -r 's/^<.*=\"http/http/' | sed -r 's/\">.*$//'
http://www.script.com/javascript1.js
http://www.css.com/style.css
http://www.iframe.com
Чтобы сохранить его в файле, просто перенаправьте его на то, что вам нужно, например:
cat prod_database.sql | grep -Ev "<a href=\".*\">.*<\/a>" | grep -E "<.*=\"http:" | sed -r 's/^<.*=\"http/http/' | sed -r 's/\">.*$//' > somefile.txt
Вот содержание:
cat somefile.txt
http://www.script.com/javascript1.js
http://www.css.com/style.css
http://www.iframe.com
В качестве альтернативы можно переключиться на альтернативный синтаксис/метод с помощью следующего (, как упомянул пользователь 1133275):
cat prod_database.sql | grep -Ev "<a href=\".*\">.*<\/a>" | grep -E "<.*=\"http:" | perl -pe 's/^<.*=\"http/http/' | perl -pe 's/\">.*$//'
Чтобы сохранить его в файле, просто перенаправьте его на то, что вам нужно, вот так (с обновленным синтаксисом):
cat prod_database.sql | grep -Ev "<a href=\".*\">.*<\/a>" | grep -E "<.*=\"http:" | perl -pe 's/^<.*=\"http/http/' | perl -pe 's/\">.*$//' > somefile.txt
Если я вас правильно понял, вы хотите:
awk -F"," 'BEGIN{OFS=","}
{
if (NR==FNR) {
a[$1]=$3;
next
}
if ($2 in a){
$1=a[$2]
}
print
}' data.csv file1.csv
Вы были почти там. Вам просто нужно установить $1
как то, что вы сохранили из первого файла, а затем распечатать строку.