У меня есть два набора текстовых файлов. Первый набор находится в папке AA. Второй комплект находится в папке BB. Содержимое файла ff.txt из первого набора (папка AA) показано ниже.
Name number marks
john 1 60
maria 2 54
samuel 3 62
ben 4 63
Я хотел бы напечатать второй столбец (число) из этого файла, если отметки> 60. Выход будет 3,4. Далее читаем файл ff.txt в папке ББ и удаляем строки содержащие цифры 3,4.
файлы в папке ББ выглядят так. второй столбец - число.
marks 1 11.824 24.015 41.220 1.00 13.65
marks 1 13.058 24.521 40.718 1.00 11.82
marks 3 12.120 13.472 46.317 1.00 10.62
marks 4 10.343 24.731 47.771 1.00 8.18
Я использовал следующий код. Этот код отлично работает для одного файла.
gawk 'BEGIN {getline} $3>60{print $2}' AA/ff.txt | while read number; do gawk -v number=$number '$2 != number' BB/ff.txt > /tmp/ff.txt; mv /tmp/ff.txt BB/ff.txt; done
Но когда я запускаю этот код с несколькими файлами, я получаю сообщение об ошибке.
gawk 'BEGIN {getline} $3>60{print $2}' AA/*.txt | while read number; do gawk -v number=$number '$2 != number' BB/*.txt > /tmp/*.txt; mv /tmp/*.txt BB/*.txt; done
error:-
mv: target `BB/kk.txt' is not a directory
Я задал этот вопрос два дня назад. Пожалуйста, помогите мне решить эту ошибку.