请帮忙,这让我发疯。
我有一个标准的 Wp-config.php 文件,我试图让 awk 在一行中只输出数据库名称、数据库用户名和密码,但无论我尝试什么,它都会吐出无关紧要的内容废话或语法错误。
define('DB_NAME', 'pinkywp_wrdp1');
/** MySQL database username */
define('DB_USER', 'pinkywp_user1');
/** MySQL database password */
define('DB_PASSWORD', 'Mq2uMCLuGvfyw');
期望的输出:
pinkywp_wrdp1 pinkywp_user1 Mq2uMCLuGvfyw
实际输出:
./dbinfo.sh: line 28: unexpected EOF while looking for matching `''
./dbinfo.sh: line 73: syntax error: unexpected end of file
最佳答案
使用 GNU awk:
使用 '
作为字段分隔符,如果当前行包含 5 列,则打印第 4 列的内容并带有尾随空白。
awk -F "'" 'NF==5 {printf("%s ",$4)}' file
输出:
pinkywp_wrdp1 pinkywp_user1 Mq2uMCLuGvfyw
关于linux - 如何在第二组单引号之间制作awk抓取字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48756085/