bash - 使用 bash 从第二个字段开始的行中提取字段 for look

标签 bash scripting awk

我当前的代码:

for i  in {0..5}; do
       rate[${i}]="`echo $line| awk -v par=$i '{par=par+2}{print $par}'`"
    done 

提取每个字段,从第二个开始并将其放入数组中。请告知是否有更优雅的方法来重写它。它不一定需要在 awk 中。

最佳答案

使用 set 拆分输入并移动以删除前 2 个元素:

set $line
shift 2
rate=($@)

或按照 chepner 的建议消除 shift:

set $line
rate=("${@:3}")

关于bash - 使用 bash 从第二个字段开始的行中提取字段 for look,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12371881/

相关文章:

bash - 命令存在于路径上,但我得到 "No such file or directory"而不是 "command not found"

bash - 如何使用powershell将sha256哈希输出作为二进制数据而不是十六进制数据?

linux - cut 命令忽略空格

json - 从列中获取 JSON 值

bash - 如何在 bash 中垂直替换控制台输出

xml - XML 文件的第一个字符必须是什么?

javascript - Netsuite 脚本 - 更新自定义数量可用字段//位置 = 仓库

php - 极简主义的 Wiki 类脚本

shell - 在 sed 中,我可以防止\S 匹配括号吗?

bash - 解析 GnuPG key 列表