-3

次のような入力ファイルがあります

C3905550 oder CDS 68 646 . - . asmbl_487
C3905550 oder exon 68 646 . - . asmbl_418
C3918365 oder CDS 42 252 . + . asmbl_445
C3918365 oder exon 42 252 . + . asmbl_443

すべての列はTABで区切られています

次のような新しい出力ファイルを作成したい:

C3905550 oder CDS 68 646 . - . asmbl_487 "asmbl_487"
C3905550 oder exon 68 646 . - . asmbl_418 "asmbl_418"
C3918365 oder CDS 42 252 . + . asmbl_445 "asmbl_445"
C3918365 oder exon 42 252 . + . asmbl_443 "asmbl_443"

出力ファイルでは、最後の列をコピーして「」で貼り付ける必要があり、この新しい列はTABではなくスペースで区切る必要があり、残りの列は入力ファイルと同様にTABで区切る必要があります

ありがとう!

4

4 に答える 4

3

別の方法は次のとおりです。

perl -pe 's/\t(\S+)\K$/\t"$1"/m'
于 2013-09-02T11:08:54.120 に答える
3

この行はあなたのために働くでしょうか?

awk -F'\t' '{print $0" \""$NF"\""}' file
于 2013-09-02T11:06:16.053 に答える
0

さらに別の方法:

sed 's/.*[[:space:]]\([^[:space:]]\+\)$/& "\1"/' file
于 2013-09-02T11:22:16.480 に答える