파일 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
이것앗스크립트는 데이터의 두 번째 필드를 가져와 수학 연산에 사용할 수 있는 변수로 분할합니다.
$ 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'
파이썬
#!/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)+"'"