Perl解释器:将'\n'转换为换行符?

Jas*_*son 2 perl

我在perl中有一个程序,它从控制台传递一个字符串.如果我从控制台传递字符串\ r \n,它确实为它应该从字面上店\ r \n到控制台的参数,因为它是像这样创建的:

my $str = '\r\n';
Run Code Online (Sandbox Code Playgroud)

如何将$ str变成CRLF?例如; 我该怎么做

my $str = '\r\n';
Run Code Online (Sandbox Code Playgroud)

my $str = "\r\n"; #<--- perl converts \r\n into a carriage return & line feed.  
Run Code Online (Sandbox Code Playgroud)

如何强制perl将从控制台传递的字符串转换为CRLF?

如果我不够清楚,让我举个例子:

my ($arg1, $arg2) = @ARGV;
print $arg1 . $arg2;
Run Code Online (Sandbox Code Playgroud)

假设$arg1已通过'Hello\r\n'$arg2通过'World!',它将Hello\r\nWorld!在我希望打印时打印Hello(newline)World!

cjm*_*cjm 8

您可以使用String :: Escape中unbackslash函数执行此操作:

use String::Escape qw( unbackslash );

my $str = 'Hello\r\nWorld\r\n';

print unbackslash($str);
Run Code Online (Sandbox Code Playgroud)