Пожалуйста, объясните следующий синтаксис:Синтаксис с фунтом и знаком процента после имени параметра оболочки
i##*.
i%.*
Я понимаю, что он делает, но я хочу знать общую картину (почему/как это делает так).
код, где он появляется:
#!/bin/bash
recursive_name_change()
{
cd "$1"
for i in *
do
#echo "${i##*.}"
if [ -d "$i" ]
then
recursive_name_change "$i"
elif [ "${i##*.}" = "cpp" ]
then
new_name=${i%.*}".c"
mv "$i" "$new_name"
fi
done
cd ../
}
recursive_name_change .
Кто-то, пожалуйста, также предполагают, где я могу найти эти своеобразные синтаксические формы от?
Вы даже * попробовали * прочитать страницу пользователя bash и найти '##'? – ghoti
Нет, я не искал его в руководстве bash, но я действительно выполнял поиск в Google, но не имел никаких полезных результатов. –
Ищите «расширение параметра». –