如何使用sed动态替换行中特定位置字符?

希望编写一个shell脚本实现对一个单行长数据串按照指定列宽自动换行显示例如:1)先产生一个单行长字符串$primes10023571113171923293137414... 希望编写一个shell脚本实现对一个单行长数据串按照指定列宽自动换行显示
例如:
1)先产生一个单行长字符串
$ primes 100
2 3 5 7 11 13 17 19 23 29 31 37 41 43 47 53 59 61 67 71 73 79 83 89 97
2)令这个数据串按照每行十列显示
$ primes 100 | sed 's/\t/\n/10;s/\t/\n/19'
2 3 5 7 11 13 17 19 23 29
31 37 41 43 47 53 59 61 67 71
73 79 83 89 97

打算使用for语句实现对行中特定位置的制表符"\t"进行替换
Number=`wc -w $1 | awk '{print $1}'`
for i in `seq 10 10 $Number`
do
j=0
sed 's/\t/\n/$(($i-$j))' $1
let j+=1
done
但是sed不支持在替换命令中使用变量指定替换字符出现的次数! [囧]
请教该如何处理?使用sed或者awk都行
展开
 我来答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式