Переменные bash: различия между версиями
Дым (обсуждение | вклад) Нет описания правки |
Дым (обсуждение | вклад) Нет описания правки |
||
Строка 51: | Строка 51: | ||
|- | |- | ||
|<code>${переменная/#образец/заменитель}</code> | |<code>${переменная/#образец/заменитель}</code> | ||
|Замена '' | |Замена образца ''в начале'' строки. | ||
|<code>"${url/#<span style="background-color:yellow">*:<span | |<code>"${url/#<span style="background-color:yellow">*:</span>/<span style="background-color:yellow">ftp:</span>}"</code> | ||
|style="text-align:center"|<span style="background-color:yellow">https:</span>//guide.bash.academy/variables.html | |style="text-align:center"|<span style="background-color:yellow">https:</span>//guide.bash.academy/variables.html | ||
↓<br/> | ↓<br/> | ||
Строка 58: | Строка 58: | ||
|- | |- | ||
|<code>${переменная/%образец/заменитель}</code> | |<code>${переменная/%образец/заменитель}</code> | ||
|Замена '' | |Замена образца ''в конце'' строки. | ||
|<code>"${url/%<span style="background-color:yellow">.html</span>/<span style="background-color:yellow">.jpg</span>}"</code> | |<code>"${url/%<span style="background-color:yellow">.html</span>/<span style="background-color:yellow">.jpg</span>}"</code> | ||
|style="text-align:center"|https://guide.bash.academy/variables<span style="background-color:yellow">.html</span> | |style="text-align:center"|https://guide.bash.academy/variables<span style="background-color:yellow">.html</span> |
Версия от 06:49, 16 марта 2022
Всякий раз вспоминая, как можно выудить часть bash-переменной без разбиения её вызовом команд, гуглил что-то вроде этой статьи. Чтобы в дальнейшем искать не приходилось, решил перевести сюда тот самый блок, ради которого всё затевалось.
Действие | Оператор | Описание | Пример | Результат |
---|---|---|---|---|
Удаление | ${переменная#образец}
|
Удаление кратчайшего куска, совпадающего с образцом в начале строки. | "${url#*/}"
|
↓ |
${переменная##образец}
|
Удаление длиннейшего куска, совпадающего с образцом в начале строки. | "${url##*/}"
|
↓ | |
${переменная%образец}
|
Удаление кратчайшего куска, совпадающего с образцом в конце строки. | "${url%/*}"
|
https://guide.bash.academy | |
${переменная%%образец}
|
Удаление длиннейшего куска, совпадающего с образцом в конце строки. | "${url%%/*}"
|
https: ↓ | |
Замена | ${переменная/образец/заменитель}
|
Замена первого вхождения, совпадающего с образцом. | "${url/./-}"
|
https://guide.bash.academy/variables.html
↓ |
${переменная//образец/заменитель}
|
Замена каждого вхождения, совпадающего с образцом. | "${url//./-}"
|
https://guide.bash.academy/variables.html
↓ | |
${переменная/#образец/заменитель}
|
Замена образца в начале строки. | "${url/#*:/ftp:}"
|
https://guide.bash.academy/variables.html
↓ | |
${переменная/%образец/заменитель}
|
Замена образца в конце строки. | "${url/%.html/.jpg}"
|
https://guide.bash.academy/variables.html |