কীভাবে বাশাল স্ক্রিপ্টে কার্ল রিকোয়েস্টকে নিরবচ্ছিন্ন করা যায়?


0

বাশ স্ক্রিপ্টে, আমি কার্ল অনুরোধ করতে চাই যাতে ব্যবহারকারীর বিরক্ত না হয়।

trap "cleanup" 1 2 3 13 15

TMP_OUT=$(curl -H "Content-Type: application/json" -X POST -d "$DATA" "${HOST}:${PORT}"'/main/store' 2>/dev/null &)
 wait $!
 if [ $? -ne 0 ]
 then
        fatal "Something went wrong connecting to the service."
 fi

পরিষেবাটি কাজ না করে কীভাবে আমি এই কাজটি করব? 0কার্ল অনুরোধটি থেকে শুরু করে 7আর স্ক্রিপ্টটি চলতে থাকলেও অপেক্ষাটি ফিরে আসে , যা হওয়া উচিত নয়।


ভিতরে ব্যাকগ্রাউন্ড কমান্ডের চেষ্টা করা $( )সত্যিই কাজ করে না, কারণ তাদের আউটপুট ক্যাপচার করার জন্য তাদের অপেক্ষা করা প্রয়োজন। আপনি আসলে কী অর্জন করতে চাইছেন এবং "ব্যবহারকারীকে বিরক্ত করা উচিত নয়" এর অর্থ কী?
গর্ডন ডেভিসন

উত্তর:


0

এরকম কিছু চেষ্টা করুন:

TMP="$(mktemp)"

curl ifconfig.co 2>/dev/null >"${TMP}" &

wait $!
echo $?

read MY_IP < "${TMP}"
rm "${TMP}"
unset TMP

echo ${MY_IP}

মৌলিকভাবে, আপনাকে " এই " শেলের সরাসরি শিশু হিসাবে আকর্ষণীয় প্রক্রিয়াটি রাখা দরকার ।

এখানে আমরা এর আউটপুটটিকে একটি অস্থায়ী ফাইলে পুনর্নির্দেশ করি এবং পরে এটি ব্যবহার করে সংযোজন করি read


তাত্ক্ষণিক জবাবের জন্য ধন্যবাদ, এটি কাজ করছে বলে মনে হচ্ছে তবে আমি পেয়েছি: অপেক্ষা করুন: পিড 1541 এই শেলের কোনও শিশু নয়
Sk Sk
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.