আউটপুট পুনঃনির্দেশ এবং ফাঁকা স্থান


9

আমি এই সম্পর্কে নির্বিকার, তবে আশা করি এটি একটি সাধারণ প্রশ্ন:

এর মধ্যে কোনও পার্থক্য আছে কি?

cat file1 | egrep -oP "[Mm]y string" > /home/user/file.txt

এবং

cat file1|egrep -oP "[Mm]y string">/home/user/file.txt

অর্থাত, পাইপ (|) এবং পুনঃনির্দেশ (>) অক্ষরগুলির প্যাডিংয়ের ফাঁকা স্থান রয়েছে কিনা তা বিবেচনা করে? আমি সত্যিই অদ্ভুত যে সেখানে ফাঁকা ফাঁকা স্থান একরকম আউটপুট ফাইলে শেষ হবে যখন আমি এটি চাই না। কেউ কি স্পষ্ট করতে পারেন? (উবুন্টু 12 / ব্যাশ ব্যবহার করা যদি তা গুরুত্বপূর্ণ থাকে))


কেবলমাত্র পার্থক্যগুলি হ'ল) ​​কসমেটিক এবং খ) সুবিধার সময় কমান্ড লাইনগুলি সম্পাদনা করার সময় সুবিধা - উদাহরণস্বরূপ একটি "শব্দ" ফাঁকা স্থান দ্বারা বিস্মৃত হয়, সুতরাং চারপাশে ফাঁকা স্থান |বা >তারপরে Ctrl-Wপূর্ববর্তী "শব্দ" মুছতে টাইপ করা আপনার সম্ভবত চেয়ে বেশি মুছতে পারে। কার্সার-আন্দোলনের জন্য Ditto মত কি-স্ট্রোক অন্তর্ভুক্ত Esc-fএবং Esc-bইত্যাদি
CA গুলির

উত্তর:


8

শেল কমান্ড লাইনে, উদ্ধৃত স্থানগুলি কমান্ড পার্সিংয়ের সময় কেবল শব্দগুলি সীমিত করে দেয়। কমান্ডটি দেখায় না বা স্ট্যান্ডার্ড ইনপুট প্রবাহেও সেগুলি পাস করা হয় না।


আপনি কি নিশ্চিত যে অপারেটরগুলির পরে কোনও স্থান ব্যবহারের সাথে সুরক্ষা দুর্বলতা নেই? আমি এখন এটি পুনরুত্পাদন করতে খুব কষ্ট পাচ্ছি, তবে একটি সাধারণ শোষণ রয়েছে যেখানে অভিযুক্ত ফাইলটি "ফাইলের নাম" এর মতো "ফাইলের নাম" এর মতো কোনও ফাইল ব্যবহার করে অভিযুক্ত অপারেশনটি পরিবর্তন করতে পারে change
21:44
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.