আমার সিড কমান্ডটি হ'ল,
sed '/(.*:)/d' <<< 'abcd:bcde:cdeaf'
এটি অবশ্যই ফিরে আসবে,
bcde:cdeaf
(অর্থাত্) লাইনের প্রথম কোলনের আগে সমস্ত অক্ষর এবং নিজেই কোলনটি সরিয়ে ফেলতে হবে।
কিন্তু এটি কিছুই অপসারণ করছে না।
আমার বিভ্রান্তি মূলত কারণে দেখা দেয়,
1) প্যাটার্ন মিলের জন্য পেরেনগুলি কি সেজেড-রেসেক্স-এস-এর ভিতরে এড়াতে হবে?
2) উভয় ক্ষেত্রে (পালিয়ে যাওয়া / কোনও এস্কেপিংয়ের সাথে), এটি এনটিআর কাজ করছে। আমি চেষ্টা করেছিলাম,
sed -E '/\\(.*:\\)/d' <<< 'abcd:bcde'
printf "%s\n" "${line#*:}"
...
while read line
পায় তবে $line
সম্ভবত sed
পছন্দ করা উচিত।
sed 's/[^:]*://'
। এবং আপনিd
ইনপুট লাইনটি একত্রিত করছেন না , উপায় দ্বারা, আপনি একটিs///
ubstistance কমান্ড দিয়ে এটি পরিবর্তন করছেন । আপনাকে প্রথমে কোলন বিট এবং কোলনকে এটিকে কোনও কিছু ছাড়াই প্রতিস্থাপন করতে হবে।