sed -n '10000000,10000020p' filename
আপনি এটির মতো সামান্য কিছুটা বাড়িয়ে দিতে সক্ষম হতে পারেন:
sed -n '10000000,10000020p; 10000021q' filename
ঐ কমান্ড সালে বিকল্প -nঘটায় sed"প্যাটার্ন স্থান স্বয়ংক্রিয় মুদ্রণ দমন" করা হয়েছে। pকমান্ড "মুদ্রণ [গুলি] বর্তমান প্যাটার্ন স্থান" এবং qকমান্ড "সঙ্গে সঙ্গে আর কোনো ইনপুট প্রক্রিয়াকরণের না করে প্রস্থান [গুলি] sed স্ক্রিপ্ট ..." উদ্ধৃতি থেকে এসেছ sed manপৃষ্ঠা ।
যাইহোক, আপনার আদেশ
tail -n 10000000 filename | head 10
ফাইলটির প্রান্ত থেকে দশ মিলিয়ন লাইনে শুরু হয় , যখন আপনার "মাঝারি" কমান্ডটি শুরু থেকে দশ মিলিয়নে শুরু হবে যা সমান হবে:
head -n 10000010 filename | tail 10
সমস্যাটি হচ্ছে ভেরিয়েবলের দৈর্ঘ্যের রেখাগুলির সাথে বাছাই করা ফাইলের জন্য যে কোনও প্রক্রিয়া ফাইলগুলি গণনা করে নতুন লাইনের মধ্য দিয়ে যেতে হয়। শর্টকাট করার কোনও উপায় নেই।
তবে, যদি ফাইলটি সাজানো হয় (উদাহরণস্বরূপ টাইমস্ট্যাম্প সহ একটি লগ ফাইল) বা নির্দিষ্ট দৈর্ঘ্যের লাইন থাকে তবে আপনি বাইট অবস্থানের ভিত্তিতে ফাইলটি সন্ধান করতে পারেন। লগ ফাইলের উদাহরণে, আপনি এখানে আমার পাইথন স্ক্রিপ্ট হিসাবে * বিভিন্ন সময় বাইনারি অনুসন্ধান করতে পারেন । স্থির রেকর্ড দৈর্ঘ্যের ফাইলের ক্ষেত্রে এটি সত্যিই সহজ। আপনি কেবল linelength * linecountফাইলটিতে অক্ষরগুলি সন্ধান করেন।
* আমি সেই স্ক্রিপ্টের আরও একটি আপডেট পোস্ট করার অর্থ রাখি। আজকের দিনগুলির মধ্যে এটির একটি পেতে পারি।