Bash 4.2 dodał obsługę ujemnych długości podciągów:
http://tldp.org/LDP/abs/html/abs-guide.html#SUBSTREXTR01
Przykład 37-12. Parametr ujemny w konstrukcie ekstrakcyjnym
Gdy parametr „długość” jest ujemny, służy jako parametr przesunięcia względem końca.
Na przykład następujące wyniki „Świat” podczas testowania na Ubuntu:
STR="Hello World!"
echo ${STR:6:-1}
Ale w OS X (GNU bash, wersja 4.3.42 (1) -release (x86_64-apple-darwin14.5.0)) użycie to powoduje następujący błąd:
-1: substring expression < 0
Czy ten OS X jest specyficzny, czy też został wyłączony w późniejszych aktualizacjach bash? Czy istnieje sposób włączenia tej funkcji w systemie OS X?
echo "Hello World" | rev | cut -c -5 | rev