如何在Bash脚本中直接提取phonelookup命令的DomainAddress字段
直接从命令输出提取特定字段(无需中间文件)
你可以通过**管道(|)**将phonelookup命令的输出直接传递给grep,彻底跳过写入文件的步骤。修改后的命令如下:
/a/b/bin/phonelookup -u "$username" | grep -oP "DomainAddress = \K(.*)"
补充说明:
- 管道的作用是将前一个命令的标准输出直接作为后一个命令的标准输入,省去了文件IO的额外操作
- 给
$username加上双引号,可以避免当用户名包含空格、特殊字符时出现解析错误 - 如果输出中存在多个
DomainAddress匹配项,而你只需要第一个结果,可以添加-m 1参数限制匹配次数:/a/b/bin/phonelookup -u "$username" | grep -oP -m 1 "DomainAddress = \K(.*)"
内容的提问来源于stack exchange,提问作者Blurman
相关产品推荐
相关产品推荐

