Anda dapat menggunakan perluasan parameter dengan extglob. Pertama, hapus nomor dari akhir, lalu hapus apa yang Anda dapatkan dari awal.
#!/bin/bash
shopt -s extglob
for str in str1s2 djfs1d2.3 fefwfw4rfe45 234ef8 ; do
without_number=${str%%+([0-9])}
echo ${str#$without_number}
done
Yang Anda butuhkan hanyalah grep -Eo '[0-9]+$'
:
[email protected]:~$ echo 234ef85 |grep -Eo '[0-9]+$' ## --> 85
[email protected]:~$ echo 234ef856 |grep -Eo '[0-9]+$' ## --> 856
[email protected]:~$ echo 234ef85d6 |grep -Eo '[0-9]+$' ## --> 6
[email protected]:~$ echo 234ef85d.6 |grep -Eo '[0-9]+$' ## --> 6
[email protected]:~$ echo 234ef85d.6. |grep -Eo '[0-9]+$' ## --> no result
[email protected]:~$ echo 234ef85d.6.1 |grep -Eo '[0-9]+$' ## --> 1
[email protected]:~$ echo 234ef85d.6.1222 |grep -Eo '[0-9]+$' ## --> 1222
Apa perbedaan antara Apache Mesos, Mesosfer, dan DCOS?
Bagaimana menggunakan Qt dalam Visual Studio Code?