সহজ উপায় হ'ল প্রতিক্রিয়া সঞ্চয় এবং এটি তুলনা:
$ response=$(curl -X POST -d@myfile.txt server-URL);
$ if [ "Upload successful" == "${response}" ]; then … fi;
আমি এটা পরীক্ষা করিনি। বাক্য গঠনটি বন্ধ হতে পারে, তবে এটি ধারণা। আমি নিশ্চিত যে এটি করার আরও সূক্ষ্ম উপায় রয়েছে যেমন কার্লের প্রস্থান কোড বা অন্য কিছু পরীক্ষা করা।
হালনাগাদ
curl
বেশ কয়েকটি প্রস্থান কোড ফেরত দেয়। আমি অনুমান করছি যে একটি ব্যর্থ পোস্টের ফলাফল হতে পারে 55 Failed sending network data.
সুতরাং আপনি সম্ভবত $?
( Expands to the exit status of the most recently executed foreground pipeline.
) এর সাথে তুলনা করে নিশ্চিত করতে পারেন যে প্রস্থান কোডটি শূন্য ছিল :
$ curl -X POST -d@myfile.txt server-URL;
$ if [ 0 -eq $? ]; then … fi;
অথবা যদি আপনার আদেশটি তুলনামূলকভাবে সংক্ষিপ্ত হয় এবং এটি ব্যর্থ হয় তখন আপনি কিছু করতে চান, আপনি শর্তাধীন বিবৃতিতে শর্ত হিসাবে প্রস্থান কোডের উপর নির্ভর করতে পারেন:
$ if curl --fail -X POST -d@myfile.txt server-URL; then
# …(success)
else
# …(failure)
fi;
আমি মনে করি এই ফর্ম্যাটটি প্রায়শই পছন্দ করা হয় তবে ব্যক্তিগতভাবে আমি এটি কম পঠনযোগ্য বলে মনে করি।