2020-01-14 Параметры В Bash Без Кавычек
Различия
Здесь показаны различия между двумя версиями данной страницы.
|
правила_разработки:как_не_надо_делать:2020-01-14_параметры_в_bash_без_кавычек [14.01.2020 09:18] nikolay_carbonsoft создано |
правила_разработки:как_не_надо_делать:2020-01-14_параметры_в_bash_без_кавычек [14.01.2020 09:22] (текущий) nikolay_carbonsoft Approved(nikolay_carbonsoft 2020/01/14 09:22) |
||
|---|---|---|---|
| Строка 1: | Строка 1: | ||
| + | **Нарушено правило:** Опасная обработка параметров. | ||
| + | ** | ||
| + | Ошибка:** Написал код, который обрабатывает параметры: | ||
| + | <code bash> | ||
| + | if [ $1 = info ]; then | ||
| + | cloud_conf node show "$NODE_NAME" | ||
| + | fi | ||
| + | </code> | ||
| + | Можно подобрать параметры, которые нарушат работу скрипта. | ||
| + | |||
| + | **Как надо делать:** | ||
| + | В bash нужно всегда использовать кавычки. Хоть их иногда можно не использовать, лучше не думать и всегда ставить кавычки. | ||
| + | <code bash> | ||
| + | if [ "$1" = 'info' ]; then | ||
| + | cloud_conf node show "$NODE_NAME" | ||
| + | fi | ||
| + | </code> | ||
| + | |||
| + | ~~OWNERAPPROVE~~ /*Не удаляйте эту строку и ниже!*/ | ||
| + | |||
| + | {(rater>id=1|name=Прочитал_правила_разработки:как_не_надо_делать:2020-01-14_параметры_в_bash_без_кавычек|type=vote|trace=user|tracedetails=1)} | ||
| + | |||