Простое решение:
for((i=1;i<2182;i++)); do
file_in="anacovis2_${i}_summary_betai_reg.out"
file_out="awk_output_${i}"
awk '$1==1 { print $NF }' "$file_in" >"$file_out"
done
Более быстрым решением может быть открытие входных и выходных файлов с помощью awk
, чтобы требовался только один awk
процесс вместо 2181...
Не проверено и просто угадывается по номерам полей, поскольку вы не предоставили образцы ввода/вывода, но вам понадобится что-то вроде этого:
yearpref1='2001'
rating='R'
score='84'
awk -F ',' -v OFS=', ' -v year="$yearpref1" -v rating="$rating" -v score="$score" '
(year == $5) && (rating == $9) && (score == $23) { print $1, $5; f=1; exit }
END { if (!f) print "Sorry" }
' netflixNoDup.csv
Обратите внимание, что это печатает первую совпадающую строку, а не случайную совпадающую строку.