Я пытаюсь применить простой скрипт awk к файлу набора данных. Файл имеет 150 столбцов, мне нужны столбцы от 20 до 30.извлекать конкретные столбцы из набора данных с использованием AWK
ниже сценарий я использовал, чтобы получить записи с полем от 20 до 30.
код
BEGIN{}
{
for(f=20;f<=30;f++){
print $f;
}
}
Я не знаю, почему я получаю значение каждого из 10 полей в следующей строке.
То есть,
образец набора данных
1 2 3 4 5 6 7
2 2 3 4 5 6 7
3 3 3 4 5 6 7
4 4 4 4 5 6 7
5 5 5 5 5 6 7
6 6 6 6 6 6 7
7 7 7 7 7 7 7
I get output as
1
2
3
4
5
6
7
2
2
3
4
5
6
7
...so on
* Используйте оператор печати, чтобы произвести вывод с простое, стандартизованное форматирование. Вы указываете только строки или числа для печати в списке, разделенном запятыми. Они выводятся, разделяются единичными пробелами, а затем новой строкой. * – melpomene
Чтобы продлить комментарий к мельпомене, посмотрите на ['printf'] (https://www.gnu.org/software/gawk/manual/html_node/Printing. html # Printing) –
Я уже пробовал использовать printf («% s», $ f), но тогда все находится в одной строке. как иметь столбец и записи как есть? Я тоже использовал OFS, FS, RS. но я не могу заставить его работать:/ –