Убираем BOM заголовки из переменных в perl
Допустим, у нас есть скрипт, запускающийся вот так :
./1.pl user password
Для удобства сохраняем доступы в Windows в txt файле, из которого их будем копипастить при запуске скрипта.
В этом случае при использовании работы по ssh в auth логе будет ошибка вида :
server sshd[23315]: Failed password for invalid user \357\273\277user from x.x.x.x port 42509 ssh2
server sshd[23319]: Did not receive identification string from x.x.x.x
то есть вместе с логином в переменную вливается BOM последовательность. Лечится ее выпиливанием через регулярные выражения
my $LOGIN = $ARGV[0];
$LOGIN =~ s/^\xEF\xBB\xBF//;