我们如何使用awk在重要单词之后获得多个单词?

Modified on: Sat, 30 Jun 2018 09:46:30 +0800

我想只连接一次我的数据库以执行多个SELECT查询,如下所示:

#!/bin/bash #Begin Code query=$(echo "SELECT COUNT(*) from USER_IPTable; SELECT User from USER_IPTable; SELECT IP_Address from USER_IPTable;" | mysql -u root --password='PASS' MatchingDB)

这将返回类似的内容:

#!/bin/bash
#Begin Code
query=$(echo "SELECT COUNT(*) from USER_IPTable;
      SELECT User from USER_IPTable;
      SELECT IP_Address from USER_IPTable;" | mysql -u root --password='PASS' MatchingDB)

我已设法使用awk获取COUNT,如下所示:

COUNT(*) 3 User user1 user2 user3 IP_Address 192.168.1.17 192.168.1.24 192.168.1.17

我的问题是如何根据计数使用awk来获取User之后的每个单词,并获得单词IP_Address

作者:,Networker

最佳答案

我会尝试这样的事情:

我在`seq 1 $ numberOfUsers`中的

for i in `seq 1 $numberOfUsers`;
do
    #Will print users
    echo $query | awk ' { print `expr $i + 2` } '
    #Will print ip
    echo $query | awk ' { print `expr $i + $numberOfUsers + 3` } '
done 

相关问答

添加新评论