Извлечь два значения из файлов

Извлечь два значения из файлов

Я хотел бы извлечь два значения из серии .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

Связанный контент