Чтение строки с переменной $ USER в виде текста и ее устранение

К сожалению, Launchpad не предлагает RSS-каналы для PPA.

UbuntuUpdates.org - это сторонняя служба, которая предлагает каналы для некоторой открытой ошибки .

3
задан 8 November 2017 в 15:52

4 ответа

read не расширяет переменные из вашего конфигурационного файла.

Вы можете проверить, что:

$ read username
$USER
$ echo $username
$USER

Этот ответ на Stackoverflow дает решение. Измените свой сценарий на это, чтобы он расширял переменные:

while read var value
do
    export "$var"="$value"
done < <(envsubst < my-conf-file.conf)
9
ответ дан 22 May 2018 в 16:24

Как сказал Кайл Стрэнд в комментарии, самым простым решением является сделать конфигурационный файл сценарием Bash:

export LocalPath=/media/$USER

Затем укажите его из основного сценария:

source my-conf-file.sh

Или, если у вас есть куча переменных, и вы не хотите вводить export для каждого из них, сделайте конфигурационный файл следующим образом:

set -a LocalPath=/media/$USER set +a
9
ответ дан 24 July 2018 в 17:53

Как сказал Кайл Стрэнд в комментарии, самым простым решением является сделать конфигурационный файл сценарием Bash:

export LocalPath=/media/$USER

Затем укажите его из основного сценария:

source my-conf-file.sh

Или, если у вас есть куча переменных, и вы не хотите вводить export для каждого из них, сделайте конфигурационный файл следующим образом:

set -a
LocalPath=/media/$USER
set +a
1
ответ дан 22 May 2018 в 16:24

Как сказал Кайл Стрэнд в комментарии, самым простым решением является сделать конфигурационный файл сценарием Bash:

export LocalPath=/media/$USER

Затем укажите его из основного сценария:

source my-conf-file.sh

Или, если у вас есть куча переменных, и вы не хотите вводить export для каждого из них, сделайте конфигурационный файл следующим образом:

set -a LocalPath=/media/$USER set +a
1
ответ дан 18 July 2018 в 03:39

Другие вопросы по тегам:

Похожие вопросы: