То, что вы ищете здесь, называется «конкатенацией строк».Perl использует точку (.
) в качестве оператора конкатенации, а не +
, который вы пытались использовать.
$hostname_table = $hostname . '_table';
print $hostname_table;
Обновление: Другой распространенный подход заключается впросто "интерполируйте" значения в строке в двойных кавычках.
$hostname_table = "$hostname_table"; # This doesn't work.
К сожалению, этот простой подход здесь не работает, так как "_table" допустим как часть имени переменной, и поэтому Perl нене знаю, где заканчивается имя вашей переменной.Вы можете обойти это, используя немного более сложный синтаксис, заключающий имя переменной в { ... }
.
$hostname_table = "${hostname}_table";