只有第一次出現我有文件settings.inc.php
,內容如下:的sed:如何提取的價值
<?php
define('_DB_SERVER_', 'mariadb');
define('_DB_NAME_', 'organic');
define('_DB_USER_', 'prestashop');
define('_DB_PASSWD_', 'prestashop');
我想這些值提取到bash
,所以我設法創建以下命令:
sed -rn 's/^.*_DB_NAME_'\'', '\''(\w+)'\''\);/\1/p' settings.inc.php
這將返回organic
,就像它應該那樣,但我想進一步改進它。比方說,我們會有這種文件:
<?php
define('_DB_SERVER_', 'mariadb');
define('_DB_NAME_', 'organic1');
define('_DB_NAME_', 'organic2');
define('_DB_USER_', 'prestashop');
define('_DB_PASSWD_', 'prestashop');
該文件使用上面的命令,我們將得到:
organic1
organic2
的事情是:我想爲這個命令總是隻返回一個值,所以讓我們說第一個。我能否在沒有管道結果的情況下實現這一目標?