当前位置: 技术问答>linux和unix
搞了一天了还没有解决,请教这样的shell程序该怎么写?
来源: 互联网 发布时间:2015-09-03
本文导语: 我输入参数是listA,listB,listC等组成的字符串(个数不定的,listA,listB名字有可能变化的),中间用逗号或者分号分割,然后用查看resultps.txt,该文本内容如下: ------------------- postgres 9725 96...
我输入参数是listA,listB,listC等组成的字符串(个数不定的,listA,listB名字有可能变化的),中间用逗号或者分号分割,然后用查看resultps.txt,该文本内容如下:
-------------------
postgres 9725 9690 2 09:31 pts/3 00:00:00 ./parsepsml listA2005011909.txt listA2005011909
postgres 9771 9745 0 09:32 pts/4 00:00:00 ./parsepsml listB2005011909.txt listB2005011909
---------------------
在result中包含有listA则listA=true;包含有listB则listB=true;包含有listC则listC=true,然后把这个结果写入到另外一个文本中。
我想应该先对我的参数进行分解,分解成a,b,c,d等,然后再循环grep吧,然后对grep结果进行写入另一个文件中,是不是这样
-------------------
postgres 9725 9690 2 09:31 pts/3 00:00:00 ./parsepsml listA2005011909.txt listA2005011909
postgres 9771 9745 0 09:32 pts/4 00:00:00 ./parsepsml listB2005011909.txt listB2005011909
---------------------
在result中包含有listA则listA=true;包含有listB则listB=true;包含有listC则listC=true,然后把这个结果写入到另外一个文本中。
我想应该先对我的参数进行分解,分解成a,b,c,d等,然后再循环grep吧,然后对grep结果进行写入另一个文件中,是不是这样
|
#!/bin/sh
if [ $# != 2 ]
then
echo "Usge:test.sh listA,listB,listC,..... sourcefile"
exit
fi
STRING=$1
LIST_STR=`echo $STRING | awk -F, -v i=0 '{while (i
if [ $# != 2 ]
then
echo "Usge:test.sh listA,listB,listC,..... sourcefile"
exit
fi
STRING=$1
LIST_STR=`echo $STRING | awk -F, -v i=0 '{while (i