Ваша ошибка заключается в пустом |)
.
Однако, если вы хотите удалить определенные слова из одной строки, egrep вам не поможет. Вам нужно использовать что-то вроде sed
:
export ADD_CXXFLAGS=$(echo " $CXXFLAGS " | sed 's/ / /g;s/ \(-DDEBUG\|-DNDEBUG\|-O[0-9]\|-Os\|-Og\) / /g')
Приведенный выше вариант добавляет пробел вокруг флагов для упрощения, а затем заменяет любое из ваших
слова пробелом. Таким образом, CXXFLAGS="-DDEBUG -g2 -O2 $ADD_CXXFLAGS"
становится ADD_CXXFLAGS=-g2
.
Обратите внимание, что вы можете сделать подобную манипуляцию внутри вашего Makefile:
ADD_CXXFLAGS=$(filter-out -DDEBUG -DNDEBUG -O1 -O2 -O3 -04 -O5 -O6 -O7 -O8 -O9 -Os -Og, $(CXXFLAGS))
$TMUX_PANE
tmux автоматически определяет эту переменную для нас, и она просто работает:
sleep 2;tmux split-window -h -t $TMUX_PANE
Это фокусирует внимание на разделении при его создании, этого можно избежать с помощью-d
:
sleep 2;tmux split-window -dh -t $TMUX_PANE