2016-08-24 4 views
-1

아래에서 언급 한대로 files.txt를 사용해야합니다.두 파일을 한 줄씩 추가하고 싶습니다.

File1.txt |s File2.txt: 
-----------------------           
P4-L5, 107MH62, 10.33.145.166, P4:R1:09 |s 10.33.145.166, 1, 3 
P4-L21, 108LH62, 10.33.209.168, P4:R3:10 |s 10.33.209.168, 2, 5 
P5-L16, 108MH62, 10.34.61.116, P5:R2:16 |s 10.34.61.116, 5, 8 
P4-L13, 109LH62, 10.33.177.168, P4:R2:09 |s 10.33.177.168, 10, 12 

내가 친절

Output file should be like: 
--------------------------- 
|P4-L5, 107MH62, 10.33.145.166, P4:R1:09, 1, 3| 
|P4-L21, 108LH62, 10.33.209.168, P4:R3:10, 2, 5| 
|P5-L16, 108MH62, 10.34.61.116, P5:R2:16, 5, 8| 
|P4-L13, 109LH62, 10.33.177.168, P4:R2:09, 10, 12| 

을 FILE1.TXT 이에 대한 bash는 나 파이썬 명령을 나에게 도움이되는 IP 주소를 비교하고 file2.txt에서 각각의 번호를 추가 할!

미리 감사드립니다.

+0

예상되는 입력 및 출력 형식을 지정하십시오. 또한, 지금까지 무엇을 시도 했습니까? – sjsam

+0

"paste file1.txt file2.txt> fileresults.txt"명령을 사용하여 파일에 병합했습니다. 하지만 난 두 파일의 열을 비교하고 각각 두 번째 파일 내용을 추가하고 싶습니다. –

답변

2
> join -t ',' -1 3 -2 1 -o 1.1 1.2 1.3 1.4 2.2 2.3 file1 file2 
P4-L5,107MH62,10.33.145.166,P4:R1:09,1,3 
P4-L21,108LH62,10.33.209.168,P4:R3:10,2,5 
P5-L16,108MH62,10.34.61.116,P5:R2:16,5,8 
P4-L13,109LH62,10.33.177.168,P4:R2:09,10,12 

일치하지 -e 옵션을 사용하는 예 :

join -t ',' -1 3 -2 1 -e 'NA' -o 1.1 1.2 1.3 2.2 2.3 -a1 file1 file2 
P4-L5,107MH62,10.33.145.166,1,3 
P4-L21,108LH62,10.33.209.168,2,5 
P5-L16,108MH62,10.34.61.116,5,8 
P4-L13,109LH62,10.33.177.168,NA,NA 

설명 :

  • -t',' : 입력 및 출력 필드 구분자로 CHAR를 사용
  • ,536,913 63,210
  • -1 3 : 같은 파일 1의 3 필드를 사용하여 조인 키
  • -2 1 : 같은 파일 2의 첫번째 필드를 사용하여 조인 키
  • -o 1.1 1.2 1.3 1.4 2.2 2.3
  • : 출력 라인을 구축 할 FORMAT을 준수하십시오. (첫 번째 파일에서 첫 번째 필드 : 1.1)
  • -e 'NA' : 자세한 내용은 NA

사용 명령 join --help에 빠진 입력 필드를 대체합니다.

+0

정말 덕분에 친구 도움이 !!! –

관련 문제