আমার কাছে অনেক দীর্ঘ নাম সহ অনেকগুলি ফাইল রয়েছে। দয়া করে সামগ্রিক দেখার জন্য আরও কলাম পেতে ফাইলের নামগুলি কেটে কেটে ফেলার উপায় আছে?
বা একটি কমপ্যাক্ট তালিকা পেতে আরও ভাল উপায় আছে?
আমার কাছে অনেক দীর্ঘ নাম সহ অনেকগুলি ফাইল রয়েছে। দয়া করে সামগ্রিক দেখার জন্য আরও কলাম পেতে ফাইলের নামগুলি কেটে কেটে ফেলার উপায় আছে?
বা একটি কমপ্যাক্ট তালিকা পেতে আরও ভাল উপায় আছে?
উত্তর:
আপনি যেমন কিছু করতে পারেন:
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 *

একটি 80 কলামের স্ক্রিন ধরে নিচ্ছি, আমি এটি ব্যবহার করতে চাই
ls -F | perl -lne 's/(.{34}).*/$1... /s ; print' | column -x | more
ls -FCপরিবর্তে সাগ্রহ অনুসারে বাছাই করতে ব্যবহার করুন
(সিডিনোট: আমার lsইতিমধ্যে স্ক্রোলগুলি কারণ এটির এলিয়াস রয়েছে ls -CF --color | more -rsure নিশ্চিত না যে এটি সর্বোত্তম অনুশীলন ...)