Bash 为什么我的循环没有通过文件中的第一行?

Bash 为什么我的循环没有通过文件中的第一行?,bash,Bash,脚本如下: filename="/Users/ra222c/bkdockerhosts" cat "$filename" | while IFS="" read -r p || [ -n "$p" ] do echo $p out=$(ssh "$p" "df -h | awk '/disk-name/ {print \$5}' | sed 's/%//'") if [ $out -le 85 ]; then echo $p fi done 该文件包含大约65个主机

脚本如下:

filename="/Users/ra222c/bkdockerhosts"

cat "$filename" | while IFS="" read -r p || [ -n "$p" ]
do
  echo $p
  out=$(ssh "$p" "df -h | awk '/disk-name/ {print \$5}' | sed 's/%//'")
  if [ $out -le 85 ]; then
    echo $p
  fi
done


该文件包含大约65个主机名。我只是想检查所有主机的磁盘使用率是否低于85%。

除了链接的副本之外,这也包含在.BTW中,我强烈建议将
cat“$filename”| while…
替换为
while。。。;完成osts文件的一些示例是什么?此脚本看起来像它的渲染主机#1