テキストファイルからスペースとハイフンを削除する

テキストファイルからスペースとハイフンを削除する

私の現在のテキストファイルは次のとおりです。

VOG0005              -          k141_44786_1         -            4.9e-11   41.0   0.0     2e-08   32.4   0.0   2.0   2   0   0   2   2   2   2 -   
VOG0005              -          k141_46357_20        -            9.2e-44  148.8   1.7   2.4e-32  111.2   0.2   3.0   2   1   1   3   3   3   3 -   
VOG0010              -          k141_1081_2          -            1.2e-06   27.4   0.5   0.00011   21.0   0.0   2.3   2   0   0   2   2   2   2 -
VOG0010              -          k141_17432_67        -            1.2e-07   30.7   0.0   1.7e-07   30.2   0.0   1.3   1   1   0   1   1   1   1 -
VOG0010              -          k141_2610_7          -            2.1e-06   26.6   0.0   2.9e-06   26.2   0.0   1.1   1   0   0   1   1   1   1 

コマンドはsortハイフンと中間スペースを別々の列として計算しますか?それでは、cutそのコマンドを使用している間にハイフンをどのように削除できますか?

VOG0005 - k141_44786_1 - 4.9e-11

このようなものを手に入れよう

VOG0005 k141_44786_1 4.9e-11

つまり、1つのスペースだけが私に適しています。次のコマンドを試しましたが、cut -f2 File.txt私の場合は動作しないようです。

誰でも助けることができますか?

ベストアンサー1

sedコマンドを使用してspacからハイフンを削除できます。

sed 's/- //g'

以下の例を参照してください

# cat example.txt
VOG0005 - k141_44786_1 - 4.9e-11 41.0 0.0 2e-08 32.4 0.0 2.0 2 0 0 2 2 2 2 -
VOG0005 - k141_46357_20 - 9.2e-44 148.8 1.7 2.4e-32 111.2 0.2 3.0 2 1 1 3 3 3 3 -
VOG0010 - k141_1081_2 - 1.2e-06 27.4 0.5 0.00011 21.0 0.0 2.3 2 0 0 2 2 2 2 -
VOG0010 - k141_17432_67 - 1.2e-07 30.7 0.0 1.7e-07 30.2 0.0 1.3 1 1 0 1 1 1 1 -
VOG0010 - k141_2610_7 - 2.1e-06 26.6 0.0 2.9e-06 26.2 0.0 1.1 1 0 0 1 1 1 1 -

# sed 's/- //g' example.txt
VOG0005 k141_44786_1 4.9e-11 41.0 0.0 2e-08 32.4 0.0 2.0 2 0 0 2 2 2 2 -
VOG0005 k141_46357_20 9.2e-44 148.8 1.7 2.4e-32 111.2 0.2 3.0 2 1 1 3 3 3 3 -
VOG0010 k141_1081_2 1.2e-06 27.4 0.5 0.00011 21.0 0.0 2.3 2 0 0 2 2 2 2 -
VOG0010 k141_17432_67 1.2e-07 30.7 0.0 1.7e-07 30.2 0.0 1.3 1 1 0 1 1 1 1 -
VOG0010 k141_2610_7 2.1e-06 26.6 0.0 2.9e-06 26.2 0.0 1.1 1 0 0 1 1 1 1 -

おすすめ記事