печатать в первом столбце на основе номера строки правильная последовательность

печатать в первом столбце на основе номера строки правильная последовательность

У меня есть файл file1 со следующими значениями

50
43
43
39
38

Я определил постоянный параметр «framei=218» и хочу получить следующий вывод, file2

218   50
218.5 43
219   43
219.5 39
220   38

будет что-то вроде следующего

awk '{print NR*'$framei' " " $s}' file1 > file2

решение1

Формулу нужно немного усложнить:

awk '{print (NR-1)/2+'$framei' " " $s}'

Или, если вы инициализируете $frameiна 217,5:

awk '{print NR/2+'$framei' " " $s}'

решение2

awk '{print '$framei'+NR/2-0.5 " " $s}' file1 > file2

решение3

Выполнено командой ниже

awk 'BEGIN{sum=218}NR>1{sum=sum+0.5}{print sum,$1}' file

выход

218 50
218.5 43
219 43
219.5 39
220 38

Питон

#!/usr/bin/python
sum=218
k=open('file','r')
l=k.readlines()
print len(l)
for i in range(0,len(l),1):
    print sum,l[i].strip()
    sum=sum+0.5

выход

218 50
218.5 43
219 43
219.5 39
220 38

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