আমি কী দীর্ঘ তালিকাতে এলএস তালিকাতে নাম কাটাতে পারি?


10

আমার কাছে অনেক দীর্ঘ নাম সহ অনেকগুলি ফাইল রয়েছে। দয়া করে সামগ্রিক দেখার জন্য আরও কলাম পেতে ফাইলের নামগুলি কেটে কেটে ফেলার উপায় আছে?

বা একটি কমপ্যাক্ট তালিকা পেতে আরও ভাল উপায় আছে?

উত্তর:


9

আপনি যেমন কিছু করতে পারেন:

ls | cut -c1-20 | columns -W "${COLUMNS:-80}"

কলাম উদাহরণ

(যে columnsএকটি সঙ্গে sগনুহ autogen থেকে)। বা:

ls | cut -c1-20 | column -c"${COLUMNS:-80}"

কলাম উদাহরণcolumnবিএসডি bsdmainutilsতে বা ডেবিয়ান বা এর ডেরাইভেটিভগুলিতে পাওয়া হিসাবে ব্যবহার করা ।

zsh কলামগুলিতে জিনিসগুলি মুদ্রণের পক্ষেও সমর্থন রয়েছে, যাতে আপনি কোনও ফাংশন সংজ্ঞায়িত করতে পারেন:

setopt extendedglob
c() print -rC$[COLUMNS/(($1)+2)] -- "${(M)@[2,-1]##?(#c0,$[$1])}"

এবং এটি হিসাবে ব্যবহার করুন:

c 20 *.txt

তালিকাটিতে txt ফাইলগুলি কলামগুলিতে মুদ্রণের জন্য, 20 টি অক্ষরে ছাঁটা হয়েছে।

এবং এটিকে কিছুটা ক্রেজিয়ার করার জন্য আপনি যুক্ত করতে পারেন:

command_not_found_handler() {(($1)) && c "$@"}

এইভাবে, আপনি এটি করতে পারেন:

20 *

অথবা এমনকি:

8+8 *

zsh উদাহরণ


উজ্জ্বল, আপনাকে ধন্যবাদ। আমার ফেডোরা 12 সিস্টেমে আমি ls ব্যবহার করেছি | কাটা -c1-20 | কলাম -W "$ OL COLUMNS: -80 line" লাইন, এবং আমার সমস্ত ফাইল এক স্ক্রিনে পেয়েছে।
হ্যারি ওয়েস্টন

0

একটি 80 কলামের স্ক্রিন ধরে নিচ্ছি, আমি এটি ব্যবহার করতে চাই

ls -F | perl -lne 's/(.{34}).*/$1... /s ; print' | column -x | more

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

ls -FCপরিবর্তে সাগ্রহ অনুসারে বাছাই করতে ব্যবহার করুন


(সিডিনোট: আমার lsইতিমধ্যে স্ক্রোলগুলি কারণ এটির এলিয়াস রয়েছে ls -CF --color | more -rsure নিশ্চিত না যে এটি সর্বোত্তম অনুশীলন ...)

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