মার্টিনাসের উত্তরের আরও সরলীকরণ:
until ping -c1 www.google.com >/dev/null 2>&1; do :; done
নোট করুন যে পিং নিজেই লুপ পরীক্ষা হিসাবে ব্যবহৃত হয়; এটি সফল হওয়ার সাথে সাথে লুপটি শেষ হয়। লুপের দেহটি শূন্য, নাল কমান্ডের সাথে :
একটি সিনট্যাক্স ত্রুটি রোধ করতে ব্যবহৃত হয়।
আপডেট: আমি কন্ট্রোল-সিটিকে পিং লুপটি পরিষ্কারভাবে প্রস্থান করার উপায়ের কথা ভেবেছিলাম। এটি পটভূমিতে লুপটি চালাবে, বিঘ্নিত (কন্ট্রোল-সি) সংকেতটি আটকাবে এবং ব্যাকগ্রাউন্ড লুপটি ঘটলে তা মেরে ফেলবে:
ping_cancelled=false # Keep track of whether the loop was cancelled, or succeeded
until ping -c1 "$1" >/dev/null 2>&1; do :; done & # The "&" backgrounds it
trap "kill $!; ping_cancelled=true" SIGINT
wait $! # Wait for the loop to exit, one way or another
trap - SIGINT # Remove the trap, now we're done with it
echo "Done pinging, cancelled=$ping_cancelled"
এটি কিছুটা সার্কিটাস, তবে আপনি যদি লুপটি বাতিলযোগ্য হতে চান তবে এটি কৌশলটি করা উচিত।