#!/bin/bash -e pglist_arr=( $(ceph health detail | grep pg | grep active | awk '{print $2}' )) echo ${pglist_arr[*]} for ((i=0; i<${#pglist_arr[@]}; i++)) do if [ 1 -eq $(ceph pg repair ${pglist_arr[$i]} | grep repair | grep instructing | wc -l) ]; then echo repair script error break fi echo ${pglist_arr[$i]} repair script done sleep 10 done