使用awk将行拆分为数组,并在调用shell中使用该数组的值

水陆两用

我正在尝试awkbash脚本内部使用并完成一个相当普通的任务:迭代结构良好的文件行,并通过定界符将它们分成数组。这是文件中的一个示例:

Joe:Johnson:25
Sue:Miller:27

有许多示例说明如何在交互模式下在一行上完成此操作,但是,我在一个脚本中执行此操作,在该脚本中,我想使用bash本身在awk子外壳之外由awk操纵的数组:

cat ${smryfile} | while read smryline; do

    echo ${smryline}

    #now i want to split the line into array 'linearray' in awk but have it usable when i get back to bash
    echo ${smryline} | awk '{split($0,$linearray,":")}'

    varX=$linearray[2]
    echo $varX
    #do something with $varX

done

我收到一个错误:

awk: syntax error at source line 1
 context is
     >>> {split($0,$linearray <<< ,":")}
awk: illegal statement at source line 1

是否可以做我想做的事情(使用在其范围之外的awk中定义的数组),我应该怎么做?

约翰1024

我认为您可以不用awk就能完成自己想做的事情:

cat "${smryfile}" | while IFS=: read first last varx
do
    echo "first='$first' last='$last' varx='$varx'"
    # do something
done

这将产生:

first='Joe' last='Johnson' varx='25'
first='Sue' last='Miller' varx='27'

请注意,即使文件中的某些名称包含空格,此方法也将起作用。

还要注意,cat不需要使用上面的内容:

while IFS=: read first last varx
do
    echo "first='$first' last='$last' varx='$varx'"
    # do something
done <"${smryfile}"

cat如上所述,删除的一个附带好处是,您在循环中创建的任何变量都将在循环结束后保留​​下来。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

使用awk将行拆分为数组,并在调用shell中使用该数组的值

来自分类Dev

如何使用Javascript将值拆分为多个数组?

来自分类Dev

将数组拆分为匹配值的数组

来自分类Dev

按值将数组拆分为数组

来自分类Dev

如何使用特定字符将数组拆分为更小的数组?

来自分类Dev

将文件捕获到数组中并在while循环中使用该数组

来自分类Dev

ruby-当值更改时将数组拆分为子数组,并忽略/删除该值

来自分类Dev

如何使用javascript将字符串中的值拆分为与数组相同的值?

来自分类Dev

JavaScript将值拆分为数组

来自分类Dev

将输入值拆分为字符数组

来自分类Dev

将数组的内容拆分为不同的行

来自分类Dev

将行拆分为单词,然后使用strtok将其放入char数组

来自分类Dev

使用Jackson将Json数组拆分为单个Json元素

来自分类Dev

Postgres函数使用额外的逻辑将单词拆分为数组

来自分类Dev

如何使用Ramda将数组拆分为子列表?

来自分类Dev

使用 ScatterV 将数组拆分为多个进程

来自分类Dev

将数组拆分为数组

来自分类Dev

PHP将多维数组拆分为与值匹配的数组块

来自分类Dev

Javascript:按值将数组拆分为多个数组

来自分类Dev

根据值将数组拆分为多个数组-PHP

来自分类Dev

PHP将多维数组拆分为与值匹配的数组块

来自分类Dev

根据值何时更改,将数组拆分为更小的数组

来自分类Dev

如何从自定义帖子中获取数组的值并在我的ajax调用中使用

来自分类Dev

如何将文本字段的值拆分为包含每个字符的数组,然后访问该数组?

来自分类Dev

bash awk将字符串拆分为数组

来自分类Dev

将字符串变量拆分为多个变量,并在SPSS中使用暂存变量

来自分类Dev

将字符串变量拆分为多个变量,并在SPSS中使用暂存变量

来自分类Dev

PHP:将数组值拆分为键和值

来自分类Dev

将数组拆分为哈希

Related 相关文章

  1. 1

    使用awk将行拆分为数组,并在调用shell中使用该数组的值

  2. 2

    如何使用Javascript将值拆分为多个数组?

  3. 3

    将数组拆分为匹配值的数组

  4. 4

    按值将数组拆分为数组

  5. 5

    如何使用特定字符将数组拆分为更小的数组?

  6. 6

    将文件捕获到数组中并在while循环中使用该数组

  7. 7

    ruby-当值更改时将数组拆分为子数组,并忽略/删除该值

  8. 8

    如何使用javascript将字符串中的值拆分为与数组相同的值?

  9. 9

    JavaScript将值拆分为数组

  10. 10

    将输入值拆分为字符数组

  11. 11

    将数组的内容拆分为不同的行

  12. 12

    将行拆分为单词,然后使用strtok将其放入char数组

  13. 13

    使用Jackson将Json数组拆分为单个Json元素

  14. 14

    Postgres函数使用额外的逻辑将单词拆分为数组

  15. 15

    如何使用Ramda将数组拆分为子列表?

  16. 16

    使用 ScatterV 将数组拆分为多个进程

  17. 17

    将数组拆分为数组

  18. 18

    PHP将多维数组拆分为与值匹配的数组块

  19. 19

    Javascript:按值将数组拆分为多个数组

  20. 20

    根据值将数组拆分为多个数组-PHP

  21. 21

    PHP将多维数组拆分为与值匹配的数组块

  22. 22

    根据值何时更改,将数组拆分为更小的数组

  23. 23

    如何从自定义帖子中获取数组的值并在我的ajax调用中使用

  24. 24

    如何将文本字段的值拆分为包含每个字符的数组,然后访问该数组?

  25. 25

    bash awk将字符串拆分为数组

  26. 26

    将字符串变量拆分为多个变量,并在SPSS中使用暂存变量

  27. 27

    将字符串变量拆分为多个变量,并在SPSS中使用暂存变量

  28. 28

    PHP:将数组值拆分为键和值

  29. 29

    将数组拆分为哈希

热门标签

归档