You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何修改awk关联数组for循环代码使c出现在排列输出中

问题原因及修改方案

根因分析

输出缺失c相关排列的问题出在输入构造的echo命令上:

  • echo -e参数中的\c是特殊转义符,作用是立即终止后续所有输出,你写的b\c\n中\c会直接截断后续内容,实际喂给awk的输入只有a、b两行,awk的关联数组中不存在c的键,自然不会输出带c的排列。

修改方案

仅需要修正echo命令里的转义符错误,把\c替换为换行符\n即可,修改后的完整代码如下:

awk '{a[$0]} END {for(i in a) for(j in a) for(k in a) print i, j, k}' < <(echo -e 'a\nb\nc\n')

修改后运行即可输出包含a、b、c的所有3元素排列结果,共27行。

内容的提问来源于stack exchange,提问作者Ibrahim Quraish

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.02 01:45:01