2017-11-27 7 views
0

자리 표시 자 규칙이 있습니다. 추가로 필요한 "국가"이름에 따라 증분 시퀀스 에 복사해야합니다. 하나의 파일에 다른 파일에서 복사 할 수 있습니다.다른 파일에서 증분 시퀀스 및 이름 필드 복사본을 사용하여 하나의 파일에 여러 번 템플릿 복사

# Cat country 
Afghanistan 
Albania 
Algeria 
Andorra 
Angola 
Antigua and Barbuda 
Argentina 
Armenia 

이 파일은 195 항목이 포함 & 라인 승, 각 항목은 새로운 줄에/B에 공백이 없습니다. 이러한 항목은 언젠가는 수, 고정되지 않은 10

# cat rule 
Rule_set S_1 
{ 
Rule S_1_R1 
     Conditions ADDR in country 
     Actions Invoice to bill 
} 

100 ** Rule_Set S_ID & 규칙 S_ID_R1의 순서 ID가 동일해야합니다.

100 번 복사하려면 이것을 사용하십시오.

for i in {1..100}; do cat rule >> file2; done 

그리고 순서

awk -vRS=S_1 '{$0=n$0;ORS=RT}++n' file2 > new_rule 

그러나 시퀀스는 하나의 규칙에 나에게하지 동일한 ID를 제공하고 아직도 국가 목록과 함께 국가의 문자열을 대체 모른다. 이 같은 예상

출력

Rule_set S_1 
{ 
    Rule S_1_R1 
     Conditions ADDR in Afghanistan 
     Actions Invoice to bill 
} 
Rule_set S_2 
{ 
    Rule S_2_R1 
     Conditions ADDR in Albania 
     Actions Invoice to bill 
} 
. 
. 
. 
. 

Rule_set S_195 
{ 
    Rule S_195_R1 
     Conditions ADDR in Zimbabwe 
     Actions Invoice to bill 
} 
+0

[편집 도움말] (http://stackoverflow.com/editing-help)을 참조하십시오. – Cyrus

+0

@cyrus 감사합니다. – Anks

답변

2

뭔가?

awk '{ print "Rule_set S_" NR "\n{\n RuleS_" NR "_R1\n Conditions " \ 
     "ADDR in " $0 "\n Actions Invoice to bill\n}\n" }' country 
+0

값을 보간 할 계획 이었지만 끝내지 않았습니다. 나는 동의한다,'print'는 여기에서 더 이해 될 것이다. – tripleee

+1

참. 나는 갱신 할 것이다. 헤즈 업에 감사드립니다. – tripleee

관련 문제