Ваш пароль указан в двойных кавычках, и Perl будет интерполировать скалярные и массивные переменные в двойных кавычках.
$password = "qwer@345"; print $password; # "qwer"
Если вы используете двойные кавычки для заключения строки, вы должны экранировать любые специальные символы в этой строке, такие как $
, @
, "
или \
.
$password = "qwer\@345"; print $password; # "qwer@345"
или используйте одинарные кавычки - Perl не выполняет интерполяцию внутри одинарных кавычек.
$password = 'qwer@345'; print $password; # "qwer@345"
Если вы use warnings
(вы всегда use warnings
, не так ли?), иногда Perl предупреждает вас, когда что-то, что вы пишете в двойных кавычках, может быть неправильно истолковано.