텍스트 파일에서 열을 추출하여 다른 텍스트 파일에 저장하는 방법은 무엇입니까?

텍스트 파일에서 열을 추출하여 다른 텍스트 파일에 저장하는 방법은 무엇입니까?

source.txt다음 데이터를 포함하는 파일이 있다고 가정해 보겠습니다 .

3LWXA       199  XRAY        1.100    0.12    0.14
3LX3A       180  XRAY        1.550    0.15    0.17
3LY0A       364  XRAY        1.399    0.17    0.19
3LYDA       161  XRAY        1.450    0.17    0.19
3LYEA       307  XRAY        1.300    0.13    0.17
3LYHB       126  XRAY        1.600    0.17    0.21
3LYPA       215  XRAY        1.600    0.18    0.21
3M07A       618  XRAY        1.400    0.15    0.17
3M0FA       213  XRAY        1.600    0.21    0.22

여기에서 {1st} 및 {1st, 2nd} 열을 추출하여 및 source.txt에 저장 하고 싶습니다 .one.txttwo.txt

어떻게 해야 하나요?


알아채다내가 찾은이 스레드그러나 이것은 도움이 되지 않습니다.

답변1

또한 시도

awk '{print $1 > "one.txt"; print $1,$2 > "two.txt"}' source.txt

답변2

사용 awk.

awk '{ print $1 }' source.txt > one.txt
awk '{ print $1,  $2 }' source.txt > two.txt

답변3

GNU sed확장 정규식 기능을 활성화 하면 (-E) 다음을 사용할 수 있습니다.

sed -En 's/\S+/&\n/2
  s/\n.*//wfile2
  s/\s.*//wfile1
' file

답변4

#!/usr/bin/python
import re
res=re.compile(r'\s+')
fil=open('source.txt','r')
firs=open('one.txt','w')
sec=open('two.txt','w')
for f in fil:
    splitcomp=re.sub(res," ",f).strip().split(' ')
    firs.write(splitcomp[0].strip() + "\n")
    seondfilecon="{0}\t{1}".format(splitcomp[0],splitcomp[1])
    sec.write(seondfilecon.strip()+"\n")

관련 정보