1

我正在尝试操作以下字符串:

/var/www/vhosts/www.xxx.nl/HTML/wp-includes/version.php:$wp_version = '3.5';    
/var/www/vhosts/www.yyy.nl/HTML/wp-includes/version.php:$wp_version = '2.9';
/var/www/vhosts/www.zzz.nl/HTML/wp-includes/version.php:$wp_version = '3.2.1';

产生输出:

www.xxx.nl 3.5
www.yyy.nl 2.9
www.zzz.nl 3.2.1

使用 cut 我可以显示第 1 列:

cut -d '/' -f5

并且使用 awk 和 sed 我可以显示第 2 列:

awk '{print $3}' | sed -e 's/^.//' -e 's/..$//'

但是如何组合这些命令以显示预期的输出?

4

1 回答 1

4

这可以使它:

$ awk -F"[/']" '{print $5, $9}' file
www.xxx.nl 3.5
www.yyy.nl 2.9
www.zzz.nl 3.2.1

我们所做的-F"[/']"是定义两个可能的字段分隔符:/'. 然后是检查所需字段的位置,恰好是第 5 和第 9。

于 2013-07-23T14:36:46.597 回答