বিশেষ অক্ষরগুলি প্রতিস্থাপন করতে সেড ব্যবহার করা


13

এটি একটি ফাইলের tomসাথে প্রতিস্থাপন করতে কাজ করে sam:

sed 's/tom/sam/g' file_1 > file_2

তবে এটি করে না:

sed 's/*****/sam/g' file_1 > file_2

*****শব্দটির সাথে বিশেষ অক্ষরগুলি প্রতিস্থাপন করতে sam। আমি একটি স্ল্যাশ \*কিন্তু ত্রুটি দিয়ে চেষ্টা করেছি ।


2
আপনি কোন আদেশ দিয়ে চেষ্টা করেছেন \*এবং কী ত্রুটিগুলি পেয়েছেন?
cuonglm

আমি চেষ্টা করেছি: 's / **** / sam / g' test.txt> test2.txt এবং ত্রুটির ফলস্বরূপ: সেড: খারাপ রেজেক্স '*****': অবৈধ নিয়মিত অভিব্যক্তি - এর আছে ব্ল্যাকস্ল্যাশ * এর আগে
রোজবুদ

1
আপনি প্রতিটি বিশেষ চরিত্র থেকে বাঁচার চেষ্টা করতে পারেন:sed 's/\*\*\*\*\*/sam/g'
টালিজিন

উত্তর:


17

বিশেষ চরিত্রের \সামনে আপনার ব্যাকস্ল্যাশ সহ বিশেষ অক্ষরগুলি পালাতে হবে , যেমন:

sed 's/\*/t/g' test.txt > test2.txt


0

বিশেষ চরিত্রের \সামনে আপনার ব্যাকস্ল্যাশ সহ বিশেষ অক্ষরগুলি পালাতে হবে । আপনার ক্ষেত্রে, ব্যাকস্ল্যাশ সহ প্রতিটি বিশেষ চরিত্রের পালাতে হবে \

উদাহরণ: **** boy is ****

sed 's/\*\*\*\*/sam/g' filename

উত্তর:

sam boy is sam
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.