첫 번째 열의 문자열 바꾸기

첫 번째 열의 문자열 바꾸기

다음과 같은 파일이 있습니다.

>TCONS_00000066_1     [3    -   170]
>TCONS_00000066_2     [174  -   206]
>TCONS_00000066_3     [2    -   223]
>TCONS_00000066_4     [210  -   281]
>TCONS_00000066_5     [227  -   316]
>TCONS_00000066_6     [1    -   324]
>TCONS_00000066_7     [285  -   338]
>TCONS_00000066_8     [335  -   373]
>TCONS_00000066_9     [342  -   377]
>TCONS_00000066_10    [328  -   465]
>TCONS_00000066_11    [377  -   487]
>TCONS_00000066_12    [469  -   546]
>TCONS_00000066_13    [390  -   551]
>TCONS_00000066_14    [518  -   556]
>TCONS_00000066_15    [537  -   490]
>TCONS_00006042_1     [9    -   62]
>TCONS_00006042_2     [87   -   146]
>TCONS_00006042_3     [150  -   203]
>TCONS_00006042_4     [2    -   220]
>TCONS_00006042_5     [1    -   255]

파일은 탭으로 구분됩니다. 각 열 뒤에는 _1및 .... 만 삭제하고 싶습니다 . 나머지 모든 열은 그대로 유지됩니다._2>TCONS_0000****

좋다:

>TCONS_00000066    [3    -   170]
>TCONS_00000066    [174  -   206]
>TCONS_00000066    [2    -   223]
>TCONS_00000066    [210  -   281]
>TCONS_00000066    [227  -   316]
>TCONS_00000066    [1    -   324]
>TCONS_00000066    [285  -   338]
>TCONS_00000066    [335  -   373]

참고: 각각은 >TCONS_*8자리 숫자로 구성됩니다. 예를 들어 >TCONS_00000066"...",>TCONS_00987652"

답변1

이것은 당신에게 도움이 될 것입니다

cat file.txt | sed 's/\([0-9]\)_[0-9]\+\t/\1\t/'

숫자(이름: \1), 밑줄, 하나 이상의 숫자, 탭 문자를 차례로 검색한 후 \1이라는 숫자와 탭 문자로 바꿉니다.

답변2

awk를 사용하세요:

awk -F'[_ ]' '{$3=""}1' file > newfile

관련 정보