সেডযুক্ত স্ট্রিংয়ে প্রথম পরিচিত চরিত্রটি মুছুন


12

সেড দিয়ে স্ট্রিংয়ের মধ্যে প্রথম পরিচিত চরিত্রটি কীভাবে মুছতে পারে?

উদাহরণস্বরূপ, বলুন আমি "@ ABCDEFG1234" স্ট্রিংয়ের প্রথম অক্ষরটি (যা @) মুছতে চাই

আমি "@" প্রথম অক্ষর হিসাবে উপস্থিত কিনা তা যাচাই করতে চাই sed যদি তা হয় তবে এটি চরিত্রটি মুছে ফেলা উচিত।

উত্তর:


10

sed 's/^@\(.*\)/\1/'

^ মানে স্ট্রিংয়ের শুরু

@ আপনার পরিচিত চর

(.*) বাকি, বন্দী

তাহলে ক্যাপচারড ব্লকটি আউটপুট এ প্রতিস্থাপন করা হবে দুঃখিত, এই মুহূর্তে এটি পরীক্ষা করতে পারে না, তবে এটির মতো কিছু হওয়া উচিত


18

ক্যাপচার এবং প্রতিস্থাপন করার দরকার নেই।

sed 's/^@//'

স্ট্রিংয়ের @প্রথমটিতে ^কিছুই না রেখেই চরিত্রটি প্রতিস্থাপন করে । সুতরাং, এটি মুছে ফেলা হচ্ছে।


0

পরিবর্তে আপনি এটি করতে পারেন।

সেড 's /^.//'

^ - Starting character 
. - No of charactes(.. means two characters)

উদাহরণ:

echo test123 | sed 's/^.//'
est123
echo test123 | sed 's/^..//'
st123

1
প্রশ্নটি বলছে "আমি" @ "প্রথম অক্ষর হিসাবে উপস্থিত কিনা তা যাচাই করতে চাই sed যদি তা হয় তবে এর চরিত্রটি মুছে ফেলা উচিত। আপনার উত্তর প্রতিটি লাইনের প্রথম অক্ষরটিকে মুছে ফেলুন তা সে যাই হোক না কেন। উদাহরণস্বরূপ, যদি কোনও লাইন থাকে test123তবে মনে হয় ওপি এটি একা রেখে দেয় left
স্কট
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.