0

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

chr1:34610-36081          1.20286
chr1:69090-70008          0.0392553
chr1:321083-321115        0
chr1:321145-321207        85.0555
chr1:367658-368597        0.114414

そして、私はに変換したい:

chr1 34610 36081          1.20286
chr1 69090 70008          0.0392553
chr1 321083 321115        0
chr1 321145 321207        85.0555
chr1 367658 368597        0.114414

コロンを削除できますが、コロンの間にスペースを作成できません

cut -d: -f1,2 file | sed s/\:/\/g
4

3 に答える 3

3

これに使用できますtr

tr ':-' ' ' < /your/file
于 2013-04-08T21:20:47.493 に答える
2

最も簡単な解決策はsed次のとおりです。

$ sed 's/[:-]/ /g' file
chr1 34610 36081          1.20286
chr1 69090 70008          0.0392553
chr1 321083 321115        0
chr1 321145 321207        85.0555
chr1 367658 368597        0.114414

変更をファイルに保存するには、次の-iオプションを使用できます。

$ sed -i 's/[:-]/ /g' file
于 2013-04-08T21:19:04.223 に答える
1

これまでのところtr、解決策とsed substitution解決策があります。awkは少しオーバーキルですが、 :)sed + trよりも短いもので再生できますsed s/../../

sed 'y/:-/  /' file

例:

kent$  echo "chr1:34610-36081          1.20286
chr1:69090-70008          0.0392553
chr1:321083-321115        0
chr1:321145-321207        85.0555
chr1:367658-368597        0.114414"|sed 'y/:-/  /' 
chr1 34610 36081          1.20286
chr1 69090 70008          0.0392553
chr1 321083 321115        0
chr1 321145 321207        85.0555
chr1 367658 368597        0.114414
于 2013-04-08T21:18:52.023 に答える