我想在变量中存储我的scala编译器的当前版本。要查找scala编译器版本,我可以运行命令scalac -version
以获得以下输出:
$> scalac -version
Scala compiler version 2.11.6 -- Copyright 2002-2013, LAMP/EPFL
我知道以下命令会在空格分隔的字符串中找到第四个字:
> N=4; echo "Scala compiler version 2.11.6 -- Copyright 2002-2013, LAMP/EPFL" | grep "Scala compiler" | awk -v N=$N '{print $N}'
2.11.6
但是,如果不是使用硬编码字符串而是使用scalac -version
作为echo
命令的输入,则结果字符串不会被拆分:
> N=4; echo "$(scalac -version)" | grep "Scala compiler" | awk -v N=$N '{print $N}'
Scala compiler version 2.11.6 -- Copyright 2002-2013, LAMP/EPFL
如何从第三个代码段获取第二个代码段的结果?
谢谢
答案 0 :(得分:1)
使用GNU grep:
var table = $('#table1').DataTable({
"serverSide": true, //include the serverSide configuration
"ajax" : {
url: "yourServletName",
contentType: "application/json",
dataType: "json"
},
"columns" : [ { //instead of columnDefs, try to use columns
{
"data" : "ID"
}, {
"data" : "NAME"
}, {
"data" : "SURNAME"
}, {
"data" : "PHONE"
}, {
"data" : "U_TYPE_NAME",
searchable : false
}, {
"data" : "MAIL"
}, {
"targets": [6],
"data" : null,
"defaultContent" : "<button>Click!</button>"
}
}]
});
或awk:
scalac -version | grep -Po '(?<=version ).*?(?= )'
输出:
2.11.6
答案 1 :(得分:1)
或cut
scalac -version 2>&1|cut -d' ' -f4
喜欢@David C. Rankin说scalac -version
输出stderr
,所以2>&1
将stderr
重定向到stdout