Подстановки параметров
Вопрос
Что дают ${v:-d}, ${v:?msg}, ${#v}, ${f%.log}, ${p##*/}, ${s//a/b}?
Попробуйте сами
Ответьте про себя или вслух, потом откройте ответ и сверьтесь.
Показать ответ и разбор
Коротко
Ответ
${v:-d}: значение или d, если пусто. ${v:?msg}: упасть с сообщением, если пусто. ${#v}: длина. ${f%.log}: срезать кратчайший суффикс .log. ${p##*/}: срезать самый длинный префикс до /, то есть имя файла. ${s//a/b}: заменить все a на b.
Разбор
${v:-d}: значение или d, если пусто. ${v:?msg}: упасть с сообщением, если пусто. ${#v}: длина. ${f%.log}: срезать кратчайший суффикс .log. ${p##*/}: срезать самый длинный префикс до /, то есть имя файла. ${s//a/b}: заменить все a на b.
Ответьте сами, а не прочитайте
В тренажёре вопрос попадёт в повторения и вернётся, когда начнёт забываться. Плюс билеты с зачётом: 20 вопросов, не больше 2 ошибок.