2013-03-18 2 views
0

나는이 영역의 천문 좌표와 이름을 사용하여 영역과 일치하는 형식화 된 텍스트 데이터 만 정렬하려고합니다. 나는이 지역을 중괄호 안에있는 그들의 이름을 기초로하여 조직하고 싶다.키가 작동하지 않는 정렬

원 (20 : 34 : 36.717, + 40 : 51 : 51.90,15 ") # 텍스트 = {} tadpole4h

원 (20 : 25 : 28.500, + 41 : 08 : 20.80,15") 난 올챙이 필드 이후의 숫자에 기초한 # 텍스트 = {tadpole45}

# 텍스트 = {tadpole33}

원 (25.24,15 "20 : 32 : 40.867, + 41 : 51) 리눅스에 비교적 새로운 것이지만 다른 스택 질문을 보는 것으로부터 이것을 가지고 있다고 생각했습니다.

sort -k55,56 -n < test.reg 

6,

sort -k54,55 -n < test.reg 

sort -k55,57 -n < test.reg 

및 K는 그것을 시도하고 교환 완전히 각부 맞춤법 N. 올빼미 문자열에 도달하기 위해 와일드 카드를 사용하고 거기에서 정렬 할 수 있다면 검색을 생각한 또 다른 방법 일 수 있습니다. 그러나 일종의 와일드 카드를 얻는 방법을 파악할 수 없었습니다.

+0

도 n과 k를 바꿔서 사용했습니다. – Skyler

+0

와우, 공백으로 구분 된 57 개 이상의 열이 있습니까? oO –

+0

정렬 중입니다. 이제 당신은 당신이 질문하고 싶은 어떤 종류의 문제를 겪고 있습니까? – stark

답변

0

당신은을 위해,이 접두사에 대한 당신의 라인을 정렬 올챙이 번호와 함께 라인을 접두사로 sed를 사용할 수 있습니다 * 것은 당신이 생각됩니다.

sed 's/.*tadpole\([^}]*\)}/\1 &/' test.reg | sort -t' ' -k1 

또한 인쇄 전에 접두사를 제거 할 수 있습니다 :

sed 's/.*tadpole\([^}]*\)}/\1 &/' test.reg | sort -t' ' -k1 | sed 's/^[^ ]* //' 
관련 문제