ফাঁকা জায়গা মুছে ফেলতে শেড করুন


28

টেক্সট ফাইলে সমস্ত ফাঁকা জায়গা মুছতে শেডকে কীভাবে ব্যবহার করতে হয় কেউ জানেন? আমি এটি করার জন্য "d" মুছে ফেলুন কমান্ডটি ব্যবহার করার চেষ্টা করছি না, তবে এটি বের করার মতো মনে হচ্ছে না

উত্তর:


35

"স্পেস" কি ধরণের?

"সমস্ত ফাঁকা জায়গা মুছে ফেলার" অর্থ বিভিন্ন জিনিসগুলির মধ্যে একটি হতে পারে:

  1. স্থান অক্ষর, কোড সমস্ত ঘটনা মুছুন 0x20
  2. অনুভূমিক ট্যাব অক্ষর সহ সমস্ত অনুভূমিক স্থান মুছুন, " \t"
  3. নিউলাইন, " \n" এবং অন্যান্য সহ সমস্ত সাদা স্থান মুছুন

কাজের জন্য সঠিক সরঞ্জাম

যদি sedএটি কোনও গোপন কারণে প্রয়োজন না হয় তবে কাজের জন্য সঠিক সরঞ্জামটি আরও ভালভাবে ব্যবহার করুন।

trঅন্যান্য অক্ষরের একটি তালিকাতে অক্ষরগুলির একটি তালিকা অনুবাদ করার জন্য কমান্ডটির প্রধান ব্যবহার রয়েছে (সুতরাং নাম "টিআর") in কোণার ক্ষেত্রে হিসাবে, এটি অক্ষরের খালি তালিকায় অনুবাদ করতে পারে; বিকল্পটি -d( --delete) তালিকায় উপস্থিত অক্ষরগুলি মুছে ফেলবে।

অক্ষরের তালিকা [:...:]সিনট্যাক্সে অক্ষর শ্রেণীর ব্যবহার করতে পারে ।

  1. tr -d ' ' < input.txt > no-spaces.txt
  2. tr -d '[:blank:]' < input.txt > no-spaces.txt
  3. tr -d '[:space:]' < input.txt > no-spaces.txt

জেদ করার সময় sed

Sed সঙ্গে, [:...:]চরিত্র শ্রেণীর জন্য বাক্য গঠন, regexps চরিত্রের সেটের জন্য সিনট্যাক্স সঙ্গে মিলিত করা প্রয়োজন [...]কিছুটা বিভ্রান্তিকর ফলে, [[:...:]]:

  1. sed 's/ //g' input.txt > no-spaces.txt
  2. sed 's/[[:blank:]]//g' input.txt > no-spaces.txt
  3. sed 's/[[:space:]]//g' input.txt > no-spaces.txt

1
+1, ফাঁকা জায়গার জন্য পসিক্স স্বরলিপি হ'ল উপযুক্ত উপায়।
অবিনাশ রাজ

1
এই কাজের জন্য টিআর ব্যবহার করার দুর্দান্ত ইঙ্গিত, দুর্দান্ত কাজ করে। কেবলমাত্র আমাকে সামঞ্জস্য করতে হয়েছিল যে টিআর স্টিডিনের ইনপুট পড়ে, তাই আমার জন্য যা কাজ হয়েছিল তা ছিল tr -d ' ' < input.txt > no-spaces.txt
আকাশ

@ স্কাইয়ের মন্তব্যটি আমার ম্যাকোজে (লিনাক্সে পরীক্ষিত নয়) কাজ করে। উত্তরটি আপডেট করা উচিত?
iplus26

অনেক ধন্যবাদ @ স্কাই, এটি সত্যই একটি খারাপ ত্রুটি। আমি trএখনই তিনটি লাইন ঠিক করব । (আপনি এটি অন্য কোথাও দেখতে পাচ্ছেন?)
ভলকার সিগেল

7

আপনি এখানে সমস্ত সাদা স্থান সরাতে এটি ব্যবহার করতে পারেন file:

 sed -i "s/ //g" file

2
কোন পাশা. আমিও একই রকম চেষ্টা করেছি। কাজ করে না
জাস্টিন

আপনি কি সাদা স্থান বা ট্যাব মুছতে চান?
সাইরাস

1
হোয়াইটস্পেসটি মুছুন
জাস্টিন

2
একটি সহজ পরীক্ষা:man sed | sed "s/ //g"
সাইরাস 21

1
@ স্টারস্ক্রিম_ডিসকো_পার্টি: এটি একই রকম। আপনি সমস্ত 3 /কে আলাদা চরিত্রের সাথে প্রতিস্থাপন করতে পারেন , যেমন:sed "ss ssg"
সাইরাস
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.