অনাকাঙ্ক্ষিত পরিবর্তন-লাইনের সাহায্যে টার্মিনাল থেকে একটি দীর্ঘ একক-লাইন পাঠ্য অনুলিপি করুন


14

locate ... | less একটি দীর্ঘ পথ আউটপুট দেয়, যা টার্মিনালের বিভিন্ন লাইন হিসাবে দেখানো হয়, যদিও এটি আসলে একক লাইন।

আমি মাউস এবং আঘাত পাঠ্য নির্বাচন করে টার্মিনাল থেকে পাথ কপি Ctrl+ + Shift+ + C। আমি যখন এটি কোনও পাঠ্য ফাইলে পেস্ট করি তখন আমি টেক্সটটিতে অযাচিত পরিবর্তন-রেখা পাই, ঠিক একইভাবে এটি টার্মিনালে প্রদর্শিত হয়।

তবে আমি মনে করি কখনও কখনও locate ... | lessঅযাচিত লাইন-পরিবর্তন প্রবর্তন না করে আমি দীর্ঘ পথ আউটপুট অনুলিপি করতে পারি এবং কখনও কখনও পারি না। আমি আলাদাভাবে কিছু করি কিনা বুঝতে পারছি না।

সুতরাং আমি ভাবছি কীভাবে সমস্যাটি হবে না তা নিশ্চিত করে? ধন্যবাদ!

আমার ওএস: উবুন্টু 12.04।

আমার টার্মিনাল: জিনোম টার্মিনাল 3.4.1.1



তবে সিআরটিএল + শিফট + সি চেঞ্জ-লাইনটি অনুলিপি না করে একসাথে দীর্ঘ লাইনের অনুলিপি করতে পারে। এখনও বিভিন্ন সমস্যা, আমি মনে করি।
টিম

আপনার প্রশ্নটি কেন বা কীভাবে এই আচরণটি নিয়ন্ত্রণ করবেন সে সম্পর্কে আরও বেশি?
SLM

হ্যাঁ. আমি শর্টকাট কী ব্যবহার করে টার্মিনালটির বাইরে টেক্সটটি অনুলিপি করি (যা আমার ধারণা দ্রুততম উপায়), কোনও ফাইলের আউটপুটকে নির্দেশ না দিয়ে
টিম

আচরণের যখন এক দিক বনাম অন্যরকম কিছু থাকে তখন কি আরও কিছু থাকে?
SLM

উত্তর:


3

টার্মিনালে যা প্রদর্শিত হবে তা অনুলিপি করার পরিবর্তে (কেবলমাত্র যা স্ক্রিনে ফিট করে) এর সাথে আসল পাঠ্যটি অনুলিপি করুন। এক্স ক্লিপবোর্ড থেকে বা অনুলিপি কপি করতে বাহ্যিক ইউটিলিটিগুলির মধ্যে একটি এক্সেল বা এক্সক্লিপ (তাদের বেশিরভাগ একই বৈশিষ্ট্য রয়েছে, আমি এই উত্তরে xsel ব্যবহার করব)। ক্লিপবোর্ডে অনুলিপি করতে স্ট্যান্ডার্ড ইনপুটটিতে পছন্দসই সামগ্রীটি পাস করুন। ক্লিপবোর্ড থেকে আটকানোর সময়, সামগ্রীটি স্ট্যান্ডার্ড আউটপুটে লেখা হয়।

কম কিছুতে, |কমান্ডের সাহায্যে একগুচ্ছ রেখাগুলি পাইপ করতে কমান্ডটি ব্যবহার করুন । আপনি যে প্রথম লাইনে কাজ করতে চান তাতে স্ক্রোল করুন, mmএকটি চিহ্ন সেট করতে টাইপ করুন, শেষ লাইনে স্ক্রোল করুন এবং টাইপ করুন |mxsel -bএবং টিপুন Enter। দুটি চিহ্ন পূর্বনির্ধারিত: ^ফাইলের শুরুতে, ফাইলের $শেষের জন্য। সুতরাং, পুরো ফাইলটি অনুলিপি করতে, ব্যবহার করুন <|$xsel -b। একটি একক লাইন অনুলিপি করতে mm|mxsel -bএবং ব্যবহার করুন Enter

-bক্লিপবোর্ডের পরিবর্তে প্রাথমিক নির্বাচনে অনুলিপি করার বিকল্পটি সরান ।


3

এর আসল আচরণটি নিম্নলিখিত:

আপনি যদি থাকেন lessএবং খুব দীর্ঘ লাইনের একটি ফাইল আপনার কাছে থাকে, তবে যদি আপনি দীর্ঘ লাইনটি নীচে স্ক্রল করে নীচে ফিরে স্ক্রোল করেন তবে পুরো পাঠ্যটি অনুলিপি করার সময় আপনার একাধিক লাইন থাকবে। এর পরে, আপনি যখন টার্মিনালের নীচে বিভক্ত রেখাগুলি নীচে স্ক্রোল করুন এবং লাইনগুলি আবার উপরে স্ক্রোল করবেন, তখন লাইন ব্রেকগুলি আবার সরানো হবে।

দেখার জন্য:

এখানে চিত্র বর্ণনা লিখুন


2

পাঠ্যটি সরাসরি টার্মিনালে আউটপুট থাকলে আপনি অতিরিক্ত নিউলাইনগুলি (লাইন ব্রেক) ছাড়াই আউটপুটের লাইনগুলি অনুলিপি করতে পারেন । টার্মিনালটি আসল লাইনটি কোথায় শেষ তা ট্র্যাক করতে পারে।

তবে যদি লাইনগুলি আউটপুট হয় lessবা কোনও অনুরূপ pagerপ্রোগ্রাম, টার্মিনালটি জানে না যে নতুনলাইনগুলি কোথায়। পেজারটি টার্মিনালটিকে অক্ষরের পূর্ণ পর্দা হিসাবে ব্যবহার করে এবং টার্মিনালটিকে "এই অক্ষরগুলি সেখানে রাখুন" এবং স্ক্রোলিংয়ের মতো ক্রিয়াকলাপকে বলে। তবে, টার্মিনালের জন্য, নতুন লাইনের উদ্দেশ্য কোথায় তা দেখার কোনও উপায় নেই।


2
আমি দেখতে পেয়েছি যে কখনও কখনও আমি লাইন ব্রেকগুলি অনুলিপি করি এবং কখনও কখনও করি না। এটি সময়ের সাথে অসঙ্গতিপূর্ণ। আজ দুটি ঘটেছে যখন আমি locate <something> | lessদুটি ভিন্ন ক্ষেত্রে Ctrl-shift-c থেকে এসেছি ।
টিম

কম তার পর্দা নিজেই আঁকেন, সাধারণত, যাতে টার্মিনালটি দেখতে না পায় কোথায় লাইন শেষ হয়। তবে কম কনফিগার করা যায় স্ক্রিন হিজিট সংক্ষিপ্ত ফাইলের জন্য কিছু করা ঠিক না। সুতরাং এটি সম্ভব যে মামলার মধ্যে পার্থক্যটি ছিল অন্যরকম মোডে কম ছিল। ( echo $LESSএকবার দেখুন , কম
কিছুর

@ টিম এটি আমাকে বছরের পর বছর ধরে বগল করছে। সম্ভবত @ নিক্নাহর উত্তরটি কারণটির প্রস্তাব দেয়? আমি প্রায়শই -Sমোডের মধ্যে স্যুইচ করি তাই এটি আরও খারাপ করে তোলে।
ড্যান গ্র্যাভেল

1
@ টিম: আমি এমন কিছু আবিষ্কার করেছি যা আপনার ওএস এবং কম সংস্করণে সত্য হতে পারে বা নাও পারে: আমি কীভাবে কম লক্ষ্যবিন্দুতে এসেছি তার উপর নির্ভর করে অনুলিপিটির আচরণের তারতম্য হয়। যদি আমি এগিয়ে অনুসন্ধান করি তবে অনুলিপিটিতে মোড়ানো নতুনলাইনগুলি অন্তর্ভুক্ত নয় (অর্থাত্ এটি মূল লং লাইনের সামগ্রীটি অনুলিপি করে)। যাইহোক, যদি আমি টার্গেট লাইনে পৌঁছানোর জন্য ফাইলটির মাধ্যমে পেছনের দিকে অনুসন্ধান করেছি তবে অনুলিপিটিতে নতুন লাইনগুলি অন্তর্ভুক্ত রয়েছে এবং দীর্ঘ লাইনটিকে একাধিক পৃথক লাইনে বিভক্ত করা হয়েছে। আমার কাছে ম্যাক এবং লিনাক্স জুড়ে সামঞ্জস্যপূর্ণ বলে মনে হচ্ছে।
এরিক.ওয়েথার্স

2

ইন less, আপনি যদি পাঠ্যের একাধিক লাইনের মোড়কে নির্বাচন করেন এবং তারপরে এটি অনুলিপি করেন তবে এটি এক লাইন হিসাবে নেমে আসবে।

আপনি যদি টিপেন PgUpতবে একই পাঠ্যটি অনুলিপি করুন, এটি একাধিক লাইন হিসাবে নেমে আসবে।

PgDnঠিক আছে, তীর ঠিক আছে। তবে PgUpপাঠ্যটি বিভক্ত হয়ে যায়।


এটি হ'ল আচরণের আসল কারণ নয়। আমার উত্তর দেখুন: unix.stackexchange.com/a/445590/105308
বববেল

0

যদি লক্ষ্যটি অনুলিপি করা ও পেস্ট করা হয় তবে আমি catপরিবর্তে lessবা moreতারপরে ব্যবহার করি এবং তারপরে টার্মিনালটি এটি প্রদর্শিত হয় যেমন এটি প্রদর্শিত হচ্ছে তার চেয়ে বেশি হয়।

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