BASH String Slice Like Python
This is a small shell function that does the same thing a Python slicing.
function string_slice { STRING="$1" declare -i LENGTH="${#STRING}" declare -i START="$2" declare -i END="$3" if [ $START -lt 0 ]; then START=$[ $LENGTH + $START ] fi if [ $END -le 0 ]; then END=$[ $LENGTH + $END ] fi START=$[ $START + 1 ] (echo "$STRING" | cut -c $START-$END) 2> /dev/null }
Usage
$ string_slice "12345" 0 1 1 $ string_slice "12345" 0 3 123 $ string_slice "12345" 2 3 3 $ string_slice "12345" 2 -2 3 $ string_slice "12345" -3 345
Credits
I found this code on: String Slicing in BASH Like Python