Как совместить bash расширение параметров и подстановку команд? - PullRequest
0 голосов
/ 30 января 2020

Я хочу добавить путь к моей переменной PATH, которая включает имя ОС в нижнем регистре. Теперь я могу сделать следующее:

osname=$(uname -s)
osname=${osname,,}
export PATH="${HOME}/this/that/${osname}/bin"

Есть ли способ написать это в одной строке, избегая самой переменной?

Ответы [ 2 ]

2 голосов
/ 30 января 2020

Не пытайтесь встроить выполнение в вашу переменную PATH, если вы можете избежать этого.

declare -l osname="$(uname -s)" && export PATH="${HOME}/this/that/${osname}/bin";
1 голос
/ 30 января 2020

Это способ

export PATH=$PATH:${HOME}/this/that/$(uname -s | tr '[:upper:]' '[:lower:]')/bin

Я добавил $ PATH в начале значения, так как, я думаю, вы не хотите потерять свой фактический $ PATH

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...