"কম" জিজেড করা ফাইলগুলি স্বয়ংক্রিয়ভাবে সঙ্কোচিত হয় না


55

ফেডোরা / রেডহ্যাট / lessসেন্টোস-এ কমান্ডটি জাজিফিকভাবে একটি জিজেপড ফাইল সনাক্ত করে এবং ফ্লাইতে এটি সংক্ষেপিত বলে মনে হচ্ছে, যাতে আপনি এটি করতে পারেন:

less my_stuff.csv.gz

আমি কেবল লক্ষ্য করেছি যে এটি উবুন্টু 11-তে কাজ করে না

less my_stuff.csv.gz
"my_stuff.csv.gz" may be a binary file.  See it anyway? 

আমি আমার সেন্টোস ভিএমগুলি পরীক্ষা করে দেখেছি কিনা এমন কিছু শেল ওরফে যাদু রয়েছে যা এটি কার্যকর করে তোলে তবে তা মনে হয় না। জিজিপ সমর্থন কি কেবল সেন্টোস বাইনারিতে অন্তর্নির্মিত?

যদি কেউ জানেন যে এটি সেন্টোজে কীভাবে কাজ করে এবং / অথবা এটি কীভাবে উবুন্টুতে কাজ করা যায় তবে আমি কৃতজ্ঞ হব।

আমি সচেতন আমি করতে পারি

zcat my_stuff.csv.gz | less

তবে এটি আমার কীবোর্ডটিকে আরও দ্রুত পরিশ্রুত করে তুলবে।


2
উবুন্টুতে 16.04 less myfile.txt.gzবাক্সের বাইরে কাজ করে।
পাবলো এ

উত্তর:


42

lessএটি ডিফল্টরূপে করবেন না, তবে ডিফল্টর মধ্যে একটি লাইন রয়েছে ~/.bashrcযা ডিফল্ট আচরণ পরিবর্তন করে:

[ -x /usr/bin/lesspipe ] && eval "$(SHELL=/bin/sh lesspipe)"

এই লাইনটি মুছে ফেলা বা মন্তব্য না করার বিষয়ে নিশ্চিত হন।
এটি জায়গায়, আপনি জিপড এবং নন-জিপ করা ফাইলগুলি লাইক না করেই পৃষ্ঠাতে পারেন

less /var/log/dpkg.log*

যেখানে কিছু লগ জিপ করা যেতে পারে এবং কিছু অন্যকে জিপ করা যায় না।

sudoআপনার মাধ্যমে অ্যাক্সেস করা মূল অ্যাকাউন্টের জন্য একই জিনিসটি করতে পারবেন না, তবে দুটি কাজের ক্ষেত্র রয়েছে:

  1. sudo zless file*
  2. sudo -E less file*

প্রথম ক্ষেত্রে আমি ব্যবহার করেছি zless, এটি জিপবিহীন ফাইলের জন্যও কাজ করে।
দ্বিতীয়টিতে আমি আপনার পরিবেশের ভেরিয়েবলগুলি সংরক্ষণ -Eকরার বিকল্পটি যুক্ত করেছি, sudoআপনার প্রত্যাশা মতো কম কাজ করার জন্য।


1
প্রথম লাইনের ডিফল্টরূপে .bashrc উপস্থিত নেই? আমি এটি যুক্ত করার কথা মনে করতে পারি না এবং এটি এখানে নির্বিঘ্নে কাজ করে (10.4)।
johanvdw

2
@ জোহানভিডাব্লু: হ্যাঁ এটি: আমি বলেছিলাম "ডিফল্টর মধ্যে একটি লাইন আছে ~/.bashrc"। ওপি তার নিজস্ব পরিবর্তন করতে পারে ~/.bashrc
এনজোটিব

ভেবেছি আমি যুক্ত করব, যেটি রেল ওএস-এর উল্লিখিত হয়েছে যেখানে এটি কাজ করে, আপনি নিম্নলিখিতটি LESSOPEN=|/usr/bin/lesspipe.sh %s[ -x /usr/bin/lesspipe.sh ] && export LESSOPEN="|/usr/bin/lesspipe.sh %s"/etc/profile.d/less.sh
এনভির

25

কম জিজেপড ফাইলগুলি পড়তে পারে না, আপনি এটির ম্যান পৃষ্ঠাতে এটি পরীক্ষা করতে পারেন। উবুন্টুতে ডিফল্টরূপে ইনস্টল করা একটি স্ক্রিপ্ট রয়েছে এবং বেশিরভাগ ডিস্ট্রোসকে বলা হয় জ্লেস , এটি আপনার বর্ণনার মতো কাজ করে।

সুতরাং উত্তরটি ব্যবহার করতে হবে:

zless my_stuff.csv.gz

ফেডোরা এবং উবুন্টুর মধ্যে পার্থক্য হ'ল ফেডোরা পরিবেশটি পরিবর্তনশীল LESSOPEN সেট করে লাস্টপাইপের মাধ্যমে যুক্তিকে জোর করার জন্য:

echo $LESSOPEN
||/usr/bin/lesspipe.sh %s

নোট করুন যে এই আদেশটি উবুন্টুতে কাজ করছে না।


উবুন্টুতে zlessএকটি শেল স্ক্রিপ্ট যা এটি ব্যবহার করে lessএবং lesspipeএর মূল অংশে থাকে তাই lessএটিতে একটি সিমলিংক হতে পারে না zless। আমি মনে করি না এটি অন্যান্য ডিস্ট্রোজে আলাদা।
enzotib

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