Próbuję dodać funkcję do mojego bash_profile
dla msysgit:Błąd składni = ~ operator w msysgit bash
function git-unpushed {
brinfo=$(git branch -v | grep git-branch-name)
if [[ $brinfo =~ ("[ahead "([[:digit:]]*)]) ]]
then
echo "(${BASH_REMATCH[2]})"
fi
}
Ale pojawia się następujący błąd:
bash: conditional binary operator expected`
bash: syntax error near
=~'
od tego, co Mogę stwierdzić, że operator "równa się tylda" (=~
) jest oceniany jako regex w bashu.
Dlaczego =~
wyświetla błąd?
UPDATE: Oto zrzut ekranu wprowadzania go ręcznie (to działa sh.exe):
ma potrzeby cytować lub umieścić regexp w nawiasach, po prostu użyć na przykład '[[$ line = ~^$]]' –
dobry połów, jak wyglądasz? i czym jest "/ bin/sh' a dowiązaniem symbolicznym? –
@FredrikPihl: Ponieważ jest to w 'bash_profile', wątpię, by był shebang. – ruakh