use shell para iterar através de um arquivo

Eu tenho dois arquivos de entrada. Um deles possui lista de nomes, formato mm: dd, duração do uso e outros itens de nome de host em cada linha. O outro é o que eu gerei que possui um conjunto de listas de nomes em cada linha que não se repete. Estou tentando escrever um comando de shell para percorrer o arquivo com a lista de nomes, armazená-los como uma variável e verificar com o outro arquivo para corresponder ao nome e, em seguida, gerar a duração total de uso de cada pessoa e, em seguida, gerar um arquivo contendo e em formação. Existe alguma maneira de usar o awk ou qualquer coisa para fazer o trabalho?

Imaginei o comando: por palavra em $ (lista de nomes de gatos); ecoam $ word; feito, mas isso é apenas para iterar através de um arquivo. O que eu quero fazer é algo como isto:

for word in namelist.txt:
 for words in info_file.txt (field $1):
   if word == words:
     (calculating usage of time) 
     print(word, ':', usage of time)

Eu já descobri os códigos para calcular o uso do tempo. É exatamente como fazer essa operação que é o meu problema agora. Alguém poderia ajudar?

----------------- mais explicações Então, eu tenho um arquivo que contém informações sobre o tempo que o usuário consumiu para efetuar login no host, que cada linha tem as informações de nome, data ( mm: dd: hh: mm), hora inicial, hora final, duração e nome do host. O que eu quero alcançar é gerar um arquivo com cada mês como título (por exemplo: [abril]) e, em seguida, calcular a duração do tempo de cada usuário que fizer login no host. Eles podem ter vários logins para que seus nomes apareçam várias vezes com as outras informações em cada linha. Eu gerei este arquivo com todos os nomes de usuário que foram logados nos últimos meio ano. Estou tentando gerar arquivo de saída com cada Nome do mês como um título e agrupar por mês e, em seguida, associar os nomes no arquivo à lista de nomes que eu gerei para obter a duração do tempo calculada e impressa no arquivo de saída na mesma linha com o nome deles impresso. Eu já descobri como fazer os cálculos. Então, agora, é como eu faço as etapas de correspondência de nomes que me confundem

Arquivo de entrada:

sdou     pts/11       Thu Dec 10 05:24 - 12:11 (2+06:46)    131.243.186.99
sdou     pts/10       Thu Dec 10 05:04 - 12:11 (2+07:06)    131.243.186.99
sdou     pts/9        Thu Dec 10 03:26 - 12:11 (2+08:45)    131.243.186.99
ermartin pts/0        Sat Dec 12 12:37 - 13:44  (01:06)     c-24-130-14-154.hsd1.ca.comcast.net
ermartin pts/0        Sat Dec 12 12:18 - 12:31  (00:13)     c-24-130-14-154.hsd1.ca.comcast.net

saída de amostra:

[Dec]
sdou 94.xxxhours
ermartin 1.19hours

questionAnswers(2)

yourAnswerToTheQuestion