1

我想转换这个文件

hg19_ct_UserTrack_3545_12805 range=chr1:117217481-117217677 5'pad=0 3'pad=0 strand=+ repeatMasking=none
TCCTCATGAGTTTACATTCTTTATTAGTTTCTCTGTTTATGGTCATCTTC
CCCTGGGTATGTAAGCTGTCTGTGGGCTGGAATCTGGTCTGTCTTGTTCT
CTGGTGTTGGTCCAATGCCTAGAATAATGCCTAGCACATAGGATGTGATC
AACAAATATTTGTTGAATGAATACGTTCTAGTTGGAAAGACAATAAA .... etc

range=chr1:117217481-117217677 5'pad=0 3'pad=0 strand=+ repeatMasking=none
TCCTCATGAGTTTACATTCTTTATTAGTTTCTCTGTTTATGGTCATCTTC
CCCTGGGTATGTAAGCTGTCTGTGGGCTGGAATCTGGTCTGTCTTGTTCT
CTGGTGTTGGTCCAATGCCTAGAATAATGCCTAGCACATAGGATGTGATC
AACAAATATTTGTTGAATGAATACGTTCTAGTTGGAAAGACAATAAA .... etc

我一直在尝试 awk 和 sed 没有运气。

4

2 回答 2

0

你需要hg19_ct_UserTrack_3545_12805从第一行删除?

然后尝试:

awk 'NR==1{sub(/^[^ ]* /,"")}1' file
于 2013-01-30T16:12:01.290 回答
0

因为这是一个简单的替换,我会使用sed

$ sed '1s/\w\+ //' file
range=chr1:117217481-117217677 5'pad=0 3'pad=0 strand=+ repeatMasking=none
TCCTCATGAGTTTACATTCTTTATTAGTTTCTCTGTTTATGGTCATCTTC
CCCTGGGTATGTAAGCTGTCTGTGGGCTGGAATCTGGTCTGTCTTGTTCT
CTGGTGTTGGTCCAATGCCTAGAATAATGCCTAGCACATAGGATGTGATC
AACAAATATTTGTTGAATGAATACGTTCTAGTTGGAAAGACAATAAA

解释:

1   # First line only
s/  # Subsitution 
\w+ # Match one or more word character follow by a space
/   # Replace with
/   # Nothing

默认情况下sed打印到,stdout但您可以使用以下-i选项直接将更改保存到文件:sed -i '1s/\w\+ //' file.

于 2013-01-30T16:12:49.817 回答