我正在读取 csv 文件
dm=`awk -F "\"*,\"*" '{print $1}' file.csv`
我保留第一列,它看起来像:
25.3
26.3
27.3
对于几行。
我想要一个由以下组成的变量
25 26 27
和一个由
3 3 3
我是 bash 的新手,但我正在努力如何做到这一点...我想出的最接近 split 的方法是
echo $dm | tr "." " "
这根本不够......
谢谢,AB
答案1
您可以将输出保存在数组中dm
并使用参数扩展从数组值中删除后缀和前缀模式。
dm=( $(awk -F "\"*,\"*" '{print $1}' file.csv) )
var1=${dm[@]%.*} # remove suffix `.*` -> "25 26 27"
var2=${dm[@]#*.} # remove prefix `*.` -> "3 3 3"