+ -
当前位置:首页 → 问答吧 → 如何保证两个后台运行的程序,第二个在第一个启动完毕后在运行

如何保证两个后台运行的程序,第二个在第一个启动完毕后在运行

时间:2011-08-02

来源:互联网

小弟有一文件a.dat:
..........
y1=compt_a
y2=compt_b
y3=compt_c
...................
想得到字符串ss="COMPT_A","COMPT_B","COMPT_C"
小弟试了很久,未成功,求帮助。
ss=""
for each in `cat a.dat |grep "compt" | cut -d"=" -f2 |tr a-z A-Z`
do
echo $each
ss=\"$ss\",\"$each\"
done

作者: killer2001   发布时间: 2011-08-02

不就是读取 a.dat 并过滤嘛, bash直接执行ruby一行代码:

代码:
ruby -e "p File.read('a.dat').scan(/.+=(.+)$/)"

打印结果:
[["compt_a"], ["compt_b "], ["compt_c"]]

作者: sevk   发布时间: 2011-08-02

转化成大写:

代码:
ruby -e "p File.read('a.dat').scan(/.+=(.+)$/).map{|x| x[0].upcase}"


输出:
代码:
["COMPT_A", "COMPT_B ", "COMPT_C"]

作者: sevk   发布时间: 2011-08-02

谢谢,我不会rubby
机子上没装rubby,也没权限装,还有别的方法吗?

[uidt5109@jz002 home]$ rubby
-bash: rubby: command not found

作者: killer2001   发布时间: 2011-08-02

[uidt5109@jz002 home]$ ruby
-bash: ruby: command not found

作者: killer2001   发布时间: 2011-08-02