어떤 필드에있는 네 번째 문자 ":"다음에 오는 내용을 제거하고 싶습니다. 예를 참조하십시오 :다음 항목 제거 N 번째 항목 사용 한 줄 짜임새 사용
입력 :
1 10975 A C 1/1:137,105:245:99:1007,102,0 0/1:219,27:248:20:222,0,20
1 19938 T TA ./. 1/1:0,167:167:99:4432,422,0,12,12
12 20043112 C G 1/2:3,5,0:15:92 2/2:3,15:20:8
예상 출력 :이
1 10975 A C 1/1:137,105:245:99 0/1:219,27:248:20
1 19938 T TA ./. 1/1:0,167:167:99
12 20043112 C G 1/2:3,5,0:15:92 2/2:3,15:20:8
그래서 기본적으로 모든 필드 ":"다음 무엇을 그 등의 발생을 제거해야합니다. 세 번째 줄은 아무 것도 바뀌지 않으므로 ":"은 세 번 나타납니다. 나는 시도하고 첫 번째 줄과 더 쉼표를 가지고로하지 SECOD 만 작동하지 않았다 솔루션 (좋지 않은) ","
불완전한 해결책 발견 : 사전에
sed 's/:[0-9]*,[0-9]*,[0-9]*//g'
감사합니다 마지막 필드 5 내지 필드에서
또한, 단지'변경 | -t 열에서'OFS = "\ t"' – Steve
고마워요. gensub 명령을 설명해주십시오. gensub, sub, gsub의 차이점은 무엇입니까? – user1421408
@ user1421408 :이 명령과 관련된 몇 가지 설명을 추가했습니다. 의견을 참조하십시오. HTH. – Steve