免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 1030 | 回复: 0
打印 上一主题 下一主题

awk -F 截取问题请教!!! [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2012-02-22 14:15 |只看该作者 |倒序浏览
本帖最后由 wdong_2001 于 2012-02-22 14:18 编辑

HI
  有两个文件(同一个文件名,内容为两种方式)
ls app.properties  (,号方式)
jetty,192.168.126.247,test,/opt/jetty-6.1.22-AA/webapps/,testAA.war
jetty,192.168.126.247,test,/opt/jetty-6.1.22-AA/webapps/,testAA.war

ls app.properties  (空格方式)
jetty:192.168.126.247 test /opt/jetty-6.1.22-AA/webapps/ testAA.war
jetty:192.168.126.247 test /opt/jetty-6.1.22-AA/webapps/ testAA.war

现在用脚本跑
for lineStr in $(cat ${scriptDir}/app.properties |grep -v "#"|grep -w "${getPackageName}"
          do
                #list=($(echo $lineStr | awk -F'[:\t]' '{print $1}' |grep -v "#"|sort |uniq))  (空格方式)
                 list=($(echo $lineStr | awk -F',' '{printf("%s %s %s %s %s",$1,$2,$3,$4,$5)}' |grep -v "#") (,号方式)
                echo "1==={list[0]}==2==={list[1]}==3==={list[2]}==4==={list[3]}==5==={list[4]}"
                sleep 5
                echo containerTypecontainerType
                if [ -z $containerType ];then
                        containerType=${list[0]}
                echo containerType1111containerType
                elif [ $containerType != ${list[0]} ];then
                        echo "containerType is wrongcontainerType and ${list[0]} is not the same container......"
                        exit;
                fi
         done

我是想得出到jetty 关键字(${list[0]})
问:为什么用“,”号的;显示:
getPackageName1111 : testAA.war
1===:jetty==2===:192.168.126.210==3===:test==4===:/opt/jetty-6.1.22-AA/webapps/==5===:testAA.war
containerType1111:jetty
1===:jetty==2===:192.168.126.247==3===:test==4===:/opt/jetty-6.1.22-BB/webapps/==5===:testAA.war

而用空格的;显示:
getPackageName1111 : testAA.war
1===:jetty:192.168.126.210==2===:==3===:==4===:==5===:
containerType1111:jetty:192.168.126.210
1===:test==2===:==3===:==4===:==5===:
containerType:jetty:192.168.126.210
containerType is wrong:jetty:192.168.126.210 and test is not the same container......

为什么,用“,”是按每行开头来,而用“空格”只是当成一行来的???

我现在想app.properties内容为以“空格”方式。而得的结果像“,”方式,请问awk 如何写????
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP