159 votes

Comment obtenir le dernier caractère d'une chaîne de caractères dans un shell ?

J'ai écrit les lignes suivantes pour obtenir le dernier caractère d'une chaîne de caractères :

str=$1
i=$((${#str}-1))
echo ${str:$i:1}

Il fonctionne pour abcd/ :

$ bash last_ch.sh abcd/
/

Es *ne fonctionne pas pour `abcd`** :

$ bash last_ch.sh abcd*
array.sh assign.sh date.sh dict.sh full_path.sh last_ch.sh

Es liste les fichiers du dossier courant .

-3voto

pradeep Points 7
echo $str | cut -c $((${#str}))

est une bonne approche

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X