Próbuję użyć wbudowanego podciągu bash, aby zastąpić wyjście podpowłoki lub innej funkcji bash.
Następujące polecenia działają całkiem dobrze w zsh; ale powoduje bad substitution
błąd w bash:
${${PWD##*/}//trunk/latest}
lub
${$(basename $PWD)//trunk/latest}
wyjście powinno być ostatnim folderem $PWD
, zastąpionym przez, latest
gdy mój bieżący katalog totrunk
tak /home/user/trunk
powinno się staćlatest
Czy istnieje odpowiednik bash umożliwiający edycję łańcuchów ciągów bez polegania na zmiennych lub potokach? Czy też wbudowane bash pozwalają, aby dane wejściowe były ciągiem znaków lub zwykłą zmienną?
sed
w kilku krokach. Ale nie rozumiem, dlaczego bash odmawia wykonania podpowłoki, a następnie zastępuje jej zawartość jak każdy inny ciąg