ডিরেক্টরি পরে স্ল্যাশ শো সন্ধান করতে চান?


19

ডিরেক্টরিগুলির পরে কীভাবে আমি অনুসন্ধান কমান্ডটি স্ল্যাশ প্রদর্শন করতে পারি? উদাহরণস্বরূপ, আমি পরিবর্তে dirহিসাবে প্রদর্শন করতে চাই । আমি ব্যাবহার করছিdir/dirfind . -print

উত্তর:


10

Portably:

find . -type d -exec sh -c 'printf "%s/\n" "$0"' {} \; -or -print

আপনি যদি ডিরেক্টরি এবং ফাইলগুলি পৃথকভাবে তালিকাবদ্ধ করতে ইচ্ছুক হন (আপনি বাছাই করে আউটপুটটি মার্জ করতে পারেন):

{ find . -type d -print | sed 's!$!/!'; find . \! -type d; } | sort

জিএনইউ অনুসন্ধানের সাথে শন জে গফের উত্তর দেখুন

যদি আপনি টার্মিনালে আউটপুট না দেওয়ার পরেও মুদ্রণযোগ্য অক্ষরগুলিকে ম্যাংলেড হওয়ার ঝুঁকি নিতে চান, তবে ডিডিমেকের উত্তর দেখুন

Zsh ইন: print -rl -- **/*(DM)( D, বিন্দু ফাইল অন্তর্ভুক্ত করা Mএকটি যোগ করার জন্য /ডিরেক্টরি পর)


প্রথম কমান্ডটি আমার জন্য ট্রেলিং স্ল্যাশ প্রিন্ট করেনি, তবে দ্বিতীয়টি তা করে।
স্টিভেন

15
find . \( -type d -printf "%p/\n" , -type f -print \)

এটি ডিরেক্টরি নাম এবং বাকীগুলির জন্য মানক মুদ্রণ ফর্ম্যাট করতে মুদ্রণকারী কমান্ডটি ব্যবহার করে।


আমি সন্ধানের নমনীয়তা দেখে অবাক হতে থাকি।
শন জে গফ

1
নোট যা -printfজিএনইউ অনুসন্ধানের সাথে নির্দিষ্ট।
গিলস 'তাই মন্দ হওয়া বন্ধ করুন'

চমৎকার উত্তর. আমি পছন্দ করি যে findএর অবস্থানগত যুক্তিগুলি এটিকে এর মতো উন্নত আউটপুট করতে দেয়। তবে খেয়াল করুন যে কমা চারপাশে ফাঁকা স্থান ছাড়া এটি কাজ করবে না।
জিম্প

1
এই উত্তর এবং গিলস 'এর উপর ভিত্তি করে আমি নিম্নলিখিত সরলীকৃত সংস্করণটি নিয়ে এসেছি:find . -type d -printf '%p/\n' -or -print
তেরেসা ই জুনিয়র

8

হতে পারে

find . -print0 | xargs -0 ls -Fd

পাশাপাশি একটি বিকল্প।

সোলারিসের ম্যান পেজ থেকে:

-এফটি পিছনে স্ল্যাশ (/), একটি পেছনের বৃহত্তর চিহ্ন (>) এর সাথে দরজা, একটি অনুচক্রী তারকা (*) সহ এক্সিকিউটেবল ফাইল, একটি পিছনে উল্লম্ব বার (|) সহ ফিফস চিহ্ন সহ ডিরেক্টরি চিহ্নিত করে " "চিহ্ন (@) এ এবং এএফ_ইউএনএক্স একটি ট্রিলিংজাক্যালস সাইন (=) সহ পারিবারিক সকেটগুলিকে সম্বোধন করে। অপারেন্ডস হিসাবে নামযুক্ত প্রতীকগুলি অনুসরণ করে।


@ গিলস: "ডি" ;-) এর জন্য ধন্যবাদ
ডেমাইমেকে

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