加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 服务器 > 安全 > 正文

数组 – 用逗号分隔的字符串转换为shell脚本中的数组值?

发布时间:2020-12-16 01:48:15 所属栏目:安全 来源:网络整理
导读:我的数据集(data.txt)看起来像这样[imageID,sessionID,height1,height2,x,y,crop]: 1,0c66824bfbba50ee715658c4e1aeacf6fda7e7ff,1296,4234,194,1536,02,03,04,950 这些是我希望使用的一组值.我是shell脚本的新手:)我像这样逐行读取文件, cat $FILENAME | w
我的数据集(data.txt)看起来像这样[imageID,sessionID,height1,height2,x,y,crop]:

1,0c66824bfbba50ee715658c4e1aeacf6fda7e7ff,1296,4234,194,1536,0
2,0
3,0
4,950

这些是我希望使用的一组值.我是shell脚本的新手:)我像这样逐行读取文件,

cat $FILENAME | while read LINE
do
string=($LINE)
# PROCESSING THE STRING
done

现在,在上面的代码中,获取字符串后,我希望执行以下操作:
1.将字符串拆分为逗号分隔值.
2.将这些变量存储到像imageID [],sessionID []这样的数组中.

我需要使用imagemagick访问这些值以进行图像处理.
?但是,我无法正确执行上述步骤

解决方法

set -A对我不起作用(可能是由于OSX上的旧版BASH)

如果有人需要,使用read -a发布备用解决方案:

# init all your individual arrays here
imageId=(); sessionId=();

while IFS=,read -ra arr; do
    imageId+=(${arr[0]})
    sessionId+=(${arr[1]})
done < input.csv

# Print your arrays
echo "${imageId[@]}"
echo "${sessionId[@]}"

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读