У меня есть файл с именем domain, который содержит некоторые домены. Например:
google.com
facebook.com
...
yahoo.com
И у меня есть другой файл с именем сайт, который содержит URL-адреса и номера сайтов. Например:
image.google.com 10
map.google.com 8
...
photo.facebook.com 22
game.facebook.com 15
..
Теперь я собираюсь подсчитать номер URL-адреса, который имеет каждый домен. Например: google.com имеет 10 + 8. Поэтому я написал awk script следующим образом:
BEGIN{
while(getline dom < "./domain" > 0) {
domain[dom]=0;
}
for(dom in domain) {
while(getline < "./site" > 0) {
if($1 ~/$dom$) #if $1 end with $dom {
domain[dom]+=$2;
}
}
}
}
Но код if($1 ~/$dom$)
не работает, как я хочу. Потому что переменная $dom в регулярном выражении объяснялась буквально. Итак, первый вопрос:
Можно ли использовать переменную $dom
в регулярном выражении?
Затем, поскольку я новичок в написании script
Есть ли лучший способ решить проблему, которая у меня есть?