Wait for PersistentVolumeClaim:
while [[ $(kubectl get pvc myclaim -o 'jsonpath={..status.phase}') != "Bound" ]]; do echo "waiting for PVC status" && sleep 1; done
Here, myclaim is the PVC name and it will wait till PVC is in Bound status
Wait for pod:
while [[ $(kubectl get pod nginx -o 'jsonpath={.status.conditions[?(@.type=="Ready")].status}') != "True" ]]; do echo "waiting for POD status" && sleep 1; done
Note: Add -n <namespace> if PVC or POD is not in default namespace.