Linux下shell编程 有一个文本A.txt内容如下 a 1 2 3 b 4 5 6 c 7 100
Linux下shell编程有一个文本A.txt内容如下a123b456c789还有一个变量n(用户赋值)现在想把文本第三列前两行的数据变成原来的n倍,结果存入新的文本中,...
Linux下shell编程
有一个文本A.txt内容如下
a 1 2 3
b 4 5 6
c 7 8 9
还有一个变量n(用户赋值)
现在想把文本第三列前两行的数据变成原来的n倍,结果存入新的文本中,
假设n赋值为10
得到的结果如下:
a 1 2 30
b 4 5 60
c 7 8 9
该如何写命令,谢谢! 展开
有一个文本A.txt内容如下
a 1 2 3
b 4 5 6
c 7 8 9
还有一个变量n(用户赋值)
现在想把文本第三列前两行的数据变成原来的n倍,结果存入新的文本中,
假设n赋值为10
得到的结果如下:
a 1 2 30
b 4 5 60
c 7 8 9
该如何写命令,谢谢! 展开
2个回答
2015-04-29
展开全部
cat a.txt |awk '{if(NR<3) {print $1,$2,$3,$4*10} else {print $0}}'
追问
如果要使用变量 如何完成 就是说 如何把变量n的值传入到awk里面去
追答
写一个shell脚本,比如ch.sh,内容为:
cat a.txt |awk "{if(NRb.txt
运行 ./ch.sh 30 即可为30x. 结果在b.txt
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
用sed命令
先查找 找到后写入新文件
先查找 找到后写入新文件
追问
您好 能不能具体一点 还是不大会
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询