我想获得执行以下操作的脚本语法:将以下输出定义为名为@pc的变量
Active connections: 47
server accepts handled requests
101 101 2434
Reading: 0 Writing: 5 Waiting: 42
我想解析此输出,以便仅获取与“活动连接”关联的值
在这种情况下,预期的返回值仅为47。
答案 0 :(得分:2)
使用此代码段:
my ($connections) = $str =~ /Active connections:\s*(\d+).*/;
变量$connections
将包含您的答案。
您还可以一次提取多个变量,例如:
my ($connections, $reading, $writing) = $str =~ /Active connections:\s*(\d+).*Reading:\s*(\d+).*Writing:\s*(\d+).*/s;
在这种情况下,变量$connections
,$reading
,$writing
将被一次提取。
如果输入字符串中没有匹配的模式,则提取的变量将为undef
-我建议对此添加检查,以检测输入字符串中没有有趣的数据。