У меня есть файл, содержащий пробел, например, такой:
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é, предположим, что может бытьболеечем два пробела:
tr -s '[[:blank:]]' < file | sed 's/[[:blank:]]/__/'
Предположим, что всегда два пробела:
tr '[[:blank:]]' '_' < file
Это работает, даже если пробелы являются символами табуляции: