ARGV忽略#符号

时间:2011-08-09 15:52:59

标签: ruby

这是我的剧本

#!/usr/bin/env ruby

puts ARGV.inspect

这是测试

$ argvtest fixed progress bar closes #88
["fixed", "progress", "bar", "closes"]

如何修复我的argvtest,以便我可以捕获#88

4 个答案:

答案 0 :(得分:4)

Bash忽略#符号后的所有内容。这样称呼:

$ echo foo \#bar

或者

$ echo foo '#bar'

答案 1 :(得分:1)

这是shell的一个问题; #是shell的注释字符。

您应该能够将该参数放在引号中:

$ argvtest fixed progress bar closes "#88"

答案 2 :(得分:0)

你需要引号中的参数。

答案 3 :(得分:0)

#88永远不会发送到脚本,因为它是大多数shell中注释的语法。

尝试\#88