LinuxSir.cn,穿越时空的Linuxsir!

 找回密码
 注册
搜索
热搜: shell linux mysql
查看: 1283|回复: 2

请教这条perl命令是什么意思?

[复制链接]
发表于 2004-5-19 09:21:56 | 显示全部楼层 |阅读模式
==========================================================
find /usr/share/enlightenment/themes/BrushedMetal-Tigert/ -type f \
    -name '*.cfg'  -exec grep -l lucida  {} \; | \
        xargs perl -i -pwe 's#".*?fixed.*?"#"shine"#'
==========================================================
是将目录BrushedMetal-Tigert下含有lucida关键字的.cfg文件中的字符串替换不?替换规则是什么呢?
发表于 2004-5-19 17:58:06 | 显示全部楼层
是将目录BrushedMetal-Tigert下含有lucida关键字的.cfg文件中的字符串替换不?


是的。

替换规则是什么呢?


它将会含有fixed的,以""为界的字符串替换为"shine"。

例如,它会将:

  1. lucida
  2. "abc fixed cde " fixed
  3. "abc efixedx" cde"
复制代码


替换为:

  1. lucida
  2. "shine" fixed
  3. "shine" cde"
复制代码
发表于 2004-5-20 11:16:06 | 显示全部楼层
另外,我认为把正则表达式改成

  1. s#"[^"]*fixed[^"]*"#"shine"#
复制代码

可能更好些。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 返回顶部 返回列表