我想格式化ruby -v
返回的字符串。
pattern="" # what do I put in here?
ruby -v | cut -d " " -f2 | sed 's/$pattern/g'
ruby -v
=> ruby 2.3.3p222 (2016-11-21 revision 56859) [universal.x86_64-darwin17]
ruby -v | cut -d " " -f2
=> 2.3.3p222
我想通过将ruby -v | cut -d " " -f2
到sed
到2.3.3
的管道输出。
答案 0 :(得分:1)
根据我的理解,您希望最终的结果是2.33
。如果是,这就是您可以做的。
$ ruby -v | awk '{ print $2 }' | awk -F'p' '{ print $1 }'
答案 1 :(得分:1)
您可以为此使用grep:
$ ruby -v | grep -Po '\d+(\.\d+){2}'
2.5.1
或者仅使用ruby本身:
$ ruby -e 'puts RUBY_VERSION'