Установка переменной Perl в качестве переменной среды - PullRequest
2 голосов
/ 10 марта 2011

Я пытаюсь установить переменную, которую я ранее установил в скрипте Perl, как переменную окружения, но кажется, что он не понимает, что параметр, который я передаю, является переменной, а не фактическим путем, который я хочу.

Например, когда я запускаю это:

$ENV{'ENV_VARIABLE'}='\'$file_path\'';
print($ENV{'ENV_VARIABLE'});

Я получаю только:

'$file_path'

Могу ли я сказать, что то, что я передаю, на самом деле является переменной, а не литеральной строкой?

1 Ответ

8 голосов
/ 10 марта 2011

В Perl строки в одинарных кавычках не интерполируют переменные. Вы хотите использовать двойную кавычку:

$ENV{'ENV_VARIABLE'}= "'$file_path'";

В этой строке значение r интерпретируется как q{'} . $file_path . q{'}, где q{'} - это необычный способ написания '\'', который немного сложнее для чтения.

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