1

现在我的表格中有字符串,"temp:10"我用temp=$(echo $str|awk '{split($0,array,":")} END{print array[1]}')它来分割,这是过度杀伤和缓慢的......必须有一个更简单的方法吗?

4

3 回答 3

4

使用 bash 的参数扩展和后缀删除:

temp=${str%%:*}
于 2013-04-22T04:28:16.927 回答
2

还有read命令:

$ str="temp:10"
$ IFS=: read before after <<< "$str"
$ echo "$before"
temp
$ echo "$after"
10
于 2013-04-22T12:44:02.870 回答
1

如果我理解正确,则在此示例中,您需要 , 之前的:temp。如果是这样,那么您可以使用以下cut命令:

cut -d':' -f1
于 2013-04-22T04:26:53.843 回答