আমার একটি মাল্টলাইন ভেরিয়েবল রয়েছে এবং আমি কেবল সেই ভেরিয়েবলের প্রথম লাইনটি চাই। নিম্নলিখিত লিপিটি সমস্যাটি দেখায়:
#!/bin/bash
STRINGTEST="Onlygetthefirstline
butnotthesecond
orthethird"
echo " Take the first line and send to standard output:"
echo ${STRINGTEST%%$'\n'*}
# Output is as follows:
# Onlygetthefirstline
echo " Set the value of the variable to the first line of the variable:"
STRINGTEST=${STRINGTEST%%$'\n'*}
echo " Send the modified variable to standard output:"
echo $STRINGTEST
# Output is as follows:
# Onlygetthefirstline butnotthesecond orthethird
প্রশ্ন: কমান্ডের ${STRINGTEST%%$'\n'*}পরে echoস্থাপনের পরে প্রথম লাইনটি কেন ফিরে আসে , তবে কার্যনির্বাহের পরে স্থাপনের পরে স্থানগুলি দিয়ে নতুন লাইনগুলি প্রতিস্থাপন করে?
$'...'ব্যাশ এর পরিবর্তে সমর্থন করে না এমন শেল দিয়ে চালানোর চেষ্টা করার মতো ব্যবহারকারীর ত্রুটির মতো মনে হচ্ছে ।