ファイル1の算術値をファイル2に特定の値を追加する

ファイル1の算術値をファイル2に特定の値を追加する

ファイル1には次のものがあります。

'a 62-182'
'a 183-303'
'a 304-424'
...

file1の値に基づいてファイル2から次の内容を取得する方法はありますか?

'a 62-182'  'a 7195-7315' 
'a 183-303' 'a 7316-7436' 
'a 304-424' 'a 7437-7557'
...

それでは、ファイル1の算術値を+7133する追加の列を追加しますか?

答え1

これアッスクリプトはデータの2番目のフィールドを取得し、数学演算に使用できる変数に分割します。

$ cat data
'a 62-182'
'a 183-303'
'a 304-424'


$ awk '{ split($2,arr,"-");
  print $0"\t"$1, arr[1] + 7133 "-" arr[2] + 7133"\047" }' data
'a 62-182'  'a 7195-7315'
'a 183-303' 'a 7316-7436'
'a 304-424' 'a 7437-7557'

答え2

awk '{gsub("-"," ",$0);print $1,$2"-"$3" "$1,$2+7133"-"$3+7133"'\''"}' filename

出力

'a 62-182' 'a 7195-7315'
'a 183-303' 'a 7316-7436'
'a 304-424' 'a 7437-7557'

Python

#!/usr/bin/python
import re
k=open ('p','r')
for i in k:
    d=i.strip().replace('-',' ').replace("'","").split(' ')
    print "'"+d[0]+" "+d[1]+"-"+d[2]+"'  "+"'"+d[0],str(int(d[1])+7133)+"-"+str(int(d[2])+7133)+"'"

関連情報