[问题]紧急求助中!!!!在线救急

sh/bash/dash/ksh/zsh等Shell脚本
回复
coldweb
帖子: 45
注册时间: 2008-03-22 1:19
送出感谢: 0
接收感谢: 0
联系:

[问题]紧急求助中!!!!在线救急

#1

帖子 coldweb » 2008-05-18 23:03

laborer 写了:输入:

代码: 全选

echo "0205032354 -35.0000 108.0010 76.0006 12 0.0" | awk '{ for (i=1;i<10;i+=2) system("printf " %d" "substr($1,i,2)); system("printf "%9.3f%9.3f%9.3f%5d%6.1f" "$2" "$3" "$4" "$5" "$6) }'

结果:

代码: 全选

 2 5 3 23 54  -35.000  108.001   76.001   12   0.0

以上结果执行了之后在结果处不出现换行,请问各位帮帮我看看,要加什么才会让它显示结果后出现换行.
即原代码执行后结果为:
luo@luo$echo "0205032354 -35.0000 108.0010 76.0006 12 0.0" | awk '{ for (i=1;i<10;i+=2) system("printf " %d" "substr($1,i,2)); system("printf "%9.3f%9.3f%9.3f%5d%6.1f" "$2" "$3" "$4" "$5" "$6) }'
luo@luo$2 5 3 23 54 -35.000 108.001 76.001 12 0.0 luo@luo$
而我要的结果是:
luo@luo$2 5 3 23 54 -35.000 108.001 76.001 12 0.0
luo@luo$
thword
帖子: 119
注册时间: 2007-04-09 12:19
送出感谢: 0
接收感谢: 0

#2

帖子 thword » 2008-05-19 10:56

加个\n

代码: 全选

echo "0205032354 -35.0000 108.0010 76.0006 12 0.0" | awk '{ for (i=1;i<10;i+=2) system("printf \" %d\" "substr($1,i,2)); system("printf \"%9.3f%9.3f%9.3f%5d%6.1f\n\" "$2" "$3" "$4" "$5" "$6) }' 


我记得我已经给出过解决方法的,虽然不如laborer的简洁

另外,像现在这个小问题,稍微看一下资料肯定是能够解决的
回复

回到 “Shell脚本”