На работе у меня есть этот старый скрипт, автора которого больше нет в компании.Сам скрипт прекрасно работает, но каждый раз, когда я его запускаю, я получаю следующее предупреждение:
Possible unintended interpolation of $\ in regex at /bin/script line 223.
Possible unintended interpolation of $\ in regex at /bin/script line 226.
Две отмеченные мной строки соответствуют:
sub get_modul {
...
open (IN, "path/to/file") || Pl_Fatal ("Error trying to open file");
$tempvar = <IN>;
close (IN);
@temp = split(":", $tempvar);
if ($#temp != 1) {
$MODUL =~ s/$\$2\///; # <--
}
else {
$MODUL =~ s/$\$0\///; # <--
}
}
По мере полученияпредупреждение для обеих строк, которые исключают друг друга. Я думаю, что это не имеет ничего общего с вводом, но на всякий случай:
скрипт анализирует :server:user@host:/path/to/rep
или /path/to/rep
, а вывод в обоих случаях: /path/to/rep
.
Я использую Perl v5.18.2, если это поможет.