1
A
回答
7
使用$0
和@ARGV
在一起:
5
,或者你可以简单地
my $full;
BEGIN { $full = "$0 @ARGV" }
#
print "log: $full\n";
$LIST_SEPARATOR
$"
当将数组或片段片段插入到双引号 字符串或类似上下文(如 /.../)中时,其元素之间用 这个值分隔。默认是一个空格。对于 例如,这样的:
print "The array is: @array\n";
等效于此:
print "The array is: " . join($", @array) . "\n";
+0
“@ ARGV”会不会与所有的空间一起? – 2011-06-13 20:39:04
+0
试试吧。 ;)将加入默认分隔符。 – jm666 2011-06-13 20:41:12
+0
那么,这是我的观点 - 什么是默认分隔符? perlvar说'undef'。 – 2011-06-13 20:49:32
相关问题
- 1. perl中的命令行选项
- 2. perl解析命令行选项
- 3. 命令行选项
- 4. 命令行选项
- 5. 从Perl执行命令行命令?
- 6. mysql命令行选项
- 7. C++和命令行选项
- 8. PyQt的命令行选项
- 9. 在Perl中输入参数/标志/命令行选项/开关
- 10. 如何用Perl解析简单的命令行选项?
- 11. Perl命令行输入?
- 12. Perl命令行问题
- 13. perl系统命令执行
- 14. perl命令行替换
- 15. Perl的命令行 - 的perl -pi -e
- 16. 从命令行保存所有文件
- 17. 未保存SQL代理命令行
- 18. 保存文件时运行Nodejs命令
- 19. 命令行保留令牌
- 20. 如何通过命令行选项包装行选项
- 21. Apache公共命令行 - 重复选项
- 22. ruby Test ::单位命令行选项?
- 23. 设置命令行选项访问VBA
- 24. 确定Inno-setup命令行选项
- 25. KornShell脚本命令行选项
- 26. Java库:命令行选项解析器
- 27. Gradle任务命令行选项
- 28. bash解析命令行选项
- 29. 在命令行中导航选项
- 30. 解析C#中的命令行选项
根据http://stackoverflow.com/questions/4739359/calling-perl-getoptions-两倍不工作如预期/ 4739389#4739389,值得注意的是'GetOptions'可能会修改'@ ARGV'。如果是这种情况,那么在使用'GetOptions'之前,您需要在其他地方存储原始的'@ ARGV'。 – 2011-06-13 18:04:40
如果您设置$ full_command = join('',$ 0,@ARGV);在BEGIN {}块内检查@ARGV,然后Getopt :: Long将有机会破坏它。只需确保在脚本的前面声明'my $ full_command',而不是BEGIN {}块的物理位置。 – DavidO 2011-06-13 18:35:05
@DavidO,除非您在BEGIN块中调用'GetOptions',否则不需要BEGIN块。简单加载Getopt :: Long不会对'@ ARGV'做任何事情。 – cjm 2011-06-13 20:34:35