这是我的文件结构:
/**** Some Text here ****/
UN 10.147.243.93 51.46 KB 256 34.2%
UN 10.147.243.89 83.05 KB 256 34.6%
DN 10.147.243.88 66.43 KB 256 32.7%
这是我的脚本
file=$1
echo $file
if grep -q DN $File; then
echo "Get the corresponding IP address, It is the treatment that I
want to do next"
fi
但是,它只显示文件名。您有什么想法吗?
2- 然后我想提取相应的 IP 地址。以下是一些详细信息:
if grep -q DN $File; then
echo "Get the corresponding IP address Guest, It is the treatment
that I want to do next"
variable=This address
fi
非常感谢你的帮助。
此致。
答案1
如上所述,您应该更正$File
拼写错误。
根据你对输出的操作,你可能if
根本不需要测试。你说你想将 IP 地址存储在变量中:
file=$1
echo $file
ip=$(grep -e DN $1 | awk '{ print $2; }')
echo $ip
这可以进一步简化,但它与您已有的相匹配。
请注意,这将仅匹配第一的文件中与“DN”对应的 IP 实例;该行为是通过您使用在第一次匹配时立即退出的-q
选项来暗示的。grep
如果你想做点什么每个发生时,你必须做些不同的事情。