加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 大数据 > 正文

如何让Perl接受负数作为命令行参数?

发布时间:2020-12-15 21:44:24 所属栏目:大数据 来源:网络整理
导读:有没有办法让Perl避免将负值视为命令行开关?在 Linux下,字符串化和反斜杠似乎都没有帮助: $perl -e 'print "@ARGVn";' 4 5 4 5$perl -e 'print "@ARGVn";' -4 5 Unrecognized switch: -4 (-h will show valid options).$perl -e 'print "@ARGVn";' "-4"
有没有办法让Perl避免将负值视为命令行开关?在 Linux下,字符串化和反斜杠似乎都没有帮助:
$perl  -e 'print "@ARGVn";' 4 5
  4 5

$perl  -e 'print "@ARGVn";' -4 5
  Unrecognized switch: -4  (-h will show valid options).

$perl -e 'print "@ARGVn";' "-4" 5
  Unrecognized switch: -4  (-h will show valid options).

$perl -e 'print "@ARGVn";' '-4' 5
  Unrecognized switch: -4  (-h will show valid options).

$perl -e 'print "@ARGVn";' -4 5
  Unrecognized switch: -4  (-h will show valid options).

解决方法

$perl -E "say join ',',@ARGV" -- -1 2 3
-1,2,3

诀窍是使用双连字符( – )来结束选项解析. Double-hyphen is a GNU convention:

$touch -a
usage: touch [-acfm] [-r file] [-t [[CC]YY]MMDDhhmm[.SS]] file ...
$touch -- -a
$ls
-a

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读