У меня есть этот мир кода:СЭД - команда незакрытых `S'
cat BP.csv | while read line ; do
goterm=$(awk '{print $1}') ;
name=$(awk '{print $2}') ;
grep -w "$goterm" GOEA.csv | sed "s/$goterm/pi/g" ;
done
файл BP.csv
имеет следующий формат:
GO:0008283 cell proliferation
GO:0009405 pathogenesis
GO:0010201 response to continuous far red light stimulus by the high-irradiance response system
GO:0009641 shade avoidance
в то время как GOEA.csv
имеет следующий формат:
4577 GO:0006807 0.994 2014_06_01
4577 GO:0016788 0.989 2014_06_01
4577 GO:0043169 0.977 2014_06_01
4577 GO:0043170 0.963 2014_06_01
sed
не работает. Я хочу изменить GO:0043170
, например, в строке «пи», но это дает:
sed: -e expression #1, char 12: unterminated `s' command
Почему? Спасибо.
Какова ценность goterm? –
@ Авинаш Радж, правда? Разве вы не видите, что geterm является первым столбцом файла BP.csv? – user2979409
Ick, вы понимаете, что эти две команды 'awk' считываются из' stdin', а не из переменной '$ line', правильно? – ams