【发布时间】:2019-09-21 20:33:10
【问题描述】:
我正在编写一个 zsh 脚本,它从文件 README 中捕获主机名,并通过 ping 确保它存在于网络上。以下是我的代码:
HOSTNAME=$(cat README 2>/dev/null | grep -oP "^Host(name)*:[\s]+\K(.*)")
ping -w 5 -c 1 $HOSTNAME >/dev/null 2>&1
if [ $? != 0 ]; then
# error
else
# all good
fi
我注意到如果README 中包含主机名的行有一个尾随空格,ping 就不起作用。例如,该行可能如下所示,其中我用 _ 字符表示空白。
Hostname:____bobscomputer_
zsh 不会像 bash 那样去除命令中多余的空格吗?
【问题讨论】: