我有一个简单的脚本,我希望用户能够指定分隔符:
#!/usr/bin/perl
use strict;
use warnings;
use Getopt::Long;
my $sep = "&";
GetOptions('sep:s' => \$sep);
my @list = ('a','b','c');
print join($sep,@list);
print "\n";
但是,如果我似乎没有找到通过" \ t"并被评估为脚本中的选项卡:
perl ~/perl_tests/sep.pl -sep \t
perl ~/perl_tests/sep.pl -sep \\t
perl ~/perl_tests/sep.pl -sep '\t'
perl ~/perl_tests/sep.pl -sep '\\t'
perl ~/perl_tests/sep.pl -sep "\t"
perl ~/perl_tests/sep.pl -sep "\\t"
不会产生我想要的输出,这是由命令行结果中的制表符分隔的值。
答案 0 :(得分:2)
这是一个shell问题,因为你从shell调用perl脚本
在bash中,这可行
perl sep.py -sep $'\t'
同样使用ctrl v,然后按Tab键并将其放在双引号中