0

在我之前的问题(使用 sed 显示文件的确切位置)中,我成功地找到了 wordpress 版本并使用 grep 命令显示文件路径:

grep -r --include=*version.php "wp_version = '" /home/draka/www/

今天我正在尝试使用相同的方法查找 joomla 版本并添加\以查找多个单词。我的命令:

grep -r --include=*version.php "RELEASE =\|DEV_LEVEL =" /home/draka/www/

和输出:

/home/draka/www/joomla1.7/includes/version.php: public $RELEASE = '1.7';
/home/draka/www/joomla1.7/includes/version.php: public $DEV_LEVEL = '5';
/home/draka/www/joomla2.5/libraries/cms/version/version.php:    public $RELEASE = '2.5';
/home/draka/www/joomla2.5/libraries/cms/version/version.php:    public $DEV_LEVEL = '11';

但是对于 joomla 1.6,它不会使用相同的命令显示输出。谁能告诉我有什么问题?

4

1 回答 1

0

RELEASE他们在 joomla 1.7 中更改了间距,在您的 grep 中, and之间只有一个空格=,而在 1.6 中,他们对齐了等号,因此有不同数量的空格。使用以下 grep 考虑任意间距:

grep -r --include=*version.php "RELEASE[[:space:]]*=\|DEV_LEVEL[[:space:]]*=" /home/draka/www/
于 2013-05-07T14:51:43.790 回答