Como estou entendendo, você só precisa do awk.
awk -F, 'NR==FNR{seen[$2]=1;next} /seen[$2] ~ $0/{print $1}
' ~/Downloads/all_data.csv /tmp/accounts_created.csv
Estou usando o shell bash. Eu quero analisar um arquivo CSV "A", procure por essa seqüência no arquivo CSV "B" e, em seguida, a saída do valor da primeira coluna da linha correspondente no arquivo CSV B. Então eu tentei
while IFS=, read -r col1 name col3 col4 col5
do
echo "I got:$name|$col5"
value='grep ${name} /tmp/accounts_created.csv | cut -d, -f${0}'
echo "value:$value \n"
done < ~/Downloads/all_data.csv
mas, por algum motivo, isso não está funcionando, apesar de eu saber que há dados correspondentes nos dois arquivos. Existe uma maneira melhor de fazer isso?
Como estou entendendo, você só precisa do awk.
awk -F, 'NR==FNR{seen[$2]=1;next} /seen[$2] ~ $0/{print $1}
' ~/Downloads/all_data.csv /tmp/accounts_created.csv
Tags bash grep csv shell-script