2017-02-17 18 views
0

Есть ли способ изменить несколько (до десяти) паттернов в одном файле fasta с помощью sed? Например, я хочу, чтобы изменить X на Y:Sed для редактирования нескольких шаблонов

sed "s/X/Y/g" <file1.fasta> output.fasta 

как добавить sed "s/\s/_/g" и еще 8 команд к тому же однострочника?

+0

Не обматывает линии fasta, так что это было бы неверно; и что вы ожидаете, чтобы достичь здесь bash, awk и python? –

+0

Вы заменяете все отдельные символы каждый раз? – anubhava

+0

Я обычно изменяю расширение .fasta на .txt, а затем обрабатываю его с помощью bash – Bio21

ответ

3

Вы можете разделить команды точкой с запятой

sed 's/a/b/;s/c/d/' 

(вы можете также использовать новые строки вместо запятой)

или вы можете использовать несколько -e S:

sed -e 's/a/b/' -e 's/c/d/' 
3

видеть этот пример : (тест с gnu sed):

kent$ echo 'abcd'|sed 's/a/1/;s/b/2/;s/c/3/;s/d/4/' 
1234 

kent$ echo 'abcd'|sed 'y/abcd/1234/'    
1234