示例字符串:
app:mob-type1-subtype:1.0.2
app:mob-type2:1.0.1
上面是我的示例字符串,我想从上面的字符串中获取“类型”值。
我该如何使用bash脚本?
我尝试了以下
代码:-
res="${element#*-}"
echo $res| awk -F : '{ print $1 }'
结果(不正确的一个)
type1
type2-subtype
但是我只想获得type1和type2值而不是子类型。我怎样才能做得更好?
答案 0 :(得分:3)
Sub trendlucid()
Dim numOfRows As Long ' use Long instead of Integer to avoid overflow issue for more thna some 32k rows or so
Dim activeRow As Integer
With ActiveSheet.UsedRange ' reference "active" sheet 'UsedRange' range
numOfRows = .Rows.Count ' count the number of rows of referenced range
activeRow = numOfRows
Do While activeRow > 1
.Rows(activeRow).EntireRow.Delete ' reference 'UsedRange' 'Rows()' instead of 'ActiveSheet' 'Rows()'
activeRow = activeRow - 2
Loop
End With
End Sub
您可以使用cat file
app:mob-type1-subtype:1.0.2
app:mob-type2:1.0.1
:
awk
awk -F '[:-]' '{print $3}' file
如果您在shell变量中输入了以下内容,这是一个type1
type2
解决方案:
bash
IFS='[:-]' read -ra arr <<< 'app:mob-type1-subtype:1.0.2'
echo "${arr[2]}"
答案 1 :(得分:0)
这是一个解决方案,考虑到您的文本在a.txt中
cat a.txt | grep -Eo "type[0-9]+"
它将给出如下输出:
type1
type2