Ini portabel untuk Dash et al. dan IMHO lebih elegan.
case $str in
*['!&()'@#$%^*_+]* ) echo yup ;;
esac
Cocokkan dengan gumpalan. Anda hanya perlu keluar dari karakter yang dianggap spesial oleh shell:
#!/bin/bash
str='some text with @ in it'
if [[ $str == *['!'@#\$%^\&*()_+]* ]]
then
echo "It contains one of those"
fi
Bagaimana cara mendapatkan PID dengan nama proses?
Ubah yang dapat dibaca manusia menjadi byte di bash