スペースを含むファイルがあります。たとえば、次のようになります。
ACTTTTTTTTGSGSGSGSG TTT
RTATATTATRSSTSTSTST HHH
スペースを削除して結果を取得したいです。
ACTTTTTTTTGSGSGSGSG__TTT
RTATATTATRSSTSTSTST__HHH
答え1
の場合、sed
各スペースをアンダースコア(_
)で置き換えることが目的であると仮定すると、行のすべてのスペースについて
sed 's/ /_/g' file
テスト
$ cat file
ACTTTTTTTTGSGSGSGSG TTT
RTATATTATRSSTSTSTST HHH
$ sed 's/ /_/g' file
ACTTTTTTTTGSGSGSGSG__TTT
RTATATTATRSSTSTSTST__HHH
答え2
@Paulo Toméの回答に追加するともっとスペースが2つ以上の場合:
tr -s '[[:blank:]]' < file | sed 's/[[:blank:]]/__/'
常に2つの空白であると仮定します。
tr '[[:blank:]]' '_' < file
スペースがタブの場合でも機能します。