
Я хотел бы извлечь два значения из серии .txt-файлов.
Это последние две строки (строка 49 и строка 50) моего .txt-файла
1 13593 3434 2.2585 0.9
2 3333 333 3.7118 0.8
& Я хочу извлечь 4-й столбец (например, 2,2585 и 3,7118) строки 49 и строки 50 из каждого файла .txt.
Есть ли способ это сделать?
спасибо
решение1
Вы можете использовать awk
для обработки текста. Следующий оператор awk считывает файл 'input' и выводит значение в столбце 4 строк 49 и 50.
awk 'FNR==49 || FNR==50 {print $4}' ввод
Теперь, чтобы прочитать все файлы в каталоге (предполагая, что все файлы находятся в одном каталоге), вы можете запустить цикл for для чтения имен файлов. Таким образом, финальное выражение будет таким:
для файла в *; сделать awk 'FNR==49 || FNR==50 {print $4}' "$file"; сделано
И в качестве трососупоминалось, что входные файлы только .txt
форматируют. Так что мы можем сделать
awk 'FNR==49 || FNR==50 {print $4}' *.txt