কমান্ড ডিফল্ট বাছাইয়ের সন্ধান করুন


30

লিনাক্স ফাইন্ড কমান্ড দ্বারা প্রদত্ত এন্ট্রিগুলির জন্য ডিফল্ট বাছাইয়ের আদেশটি কী?

উদাহরণস্বরূপ, যদি আমি ইস্যু করি

find . -type f -name '*mp3' 

এবং আউটপুটে একাধিক সাব-ফোল্ডার জুড়ে একাধিক ফাইল থাকে, ডিরেক্টরিগুলি তালিকাভুক্ত হয় সেই ডিফল্ট অর্ডারটি কী? একই সময়ে, বাছাইয়ের আদেশটি কী যা একটি পৃথক ডিরেক্টরিতে থাকা ফাইলগুলির তালিকাভুক্ত থাকে?

কখনও কখনও এটি ফিরে আসে:

./B/01.mp3
./A/01.mp3
./A/04.mp3
./A/02.mp3

ডিরেক্টরি বি এর বিষয়বস্তুগুলি প্রথমে কীভাবে তালিকাভুক্ত করা হয়েছে তা দেখুন, তারপরে ডিরেক্টরি ক এর ডিরেক্টরি ক দেখুন একই সময়ে ডিরেক্টরি A এর মধ্যে ফাইলগুলি মজাদার ক্রমে তালিকাভুক্ত করা হয়।


অভিজ্ঞতা থেকে এটি ইনস্টল প্রতি সামঞ্জস্যপূর্ণ বলে মনে হয়, অর্থাৎ। যদি দুটি মেশিনে আপনার ফাইলগুলির একই সেট থাকে তবে এটি সর্বদা একটি মেশিনে একটি ক্রম এবং অন্যটিতে সম্পূর্ণ ভিন্ন একটি ফেরত দেয়। আমি ভেবে দেখেছি কেন আগে, +1
জেমস এল

1
আমার গাড়িতে আমার একটি এফএম ট্রান্সমিটার রয়েছে এবং এটি সর্বদা আমার ফ্ল্যাশ কার্ড থেকে অদ্ভুত ক্রমে গান বাজায়। আমি এটি কখনই আবিষ্কার করতে পারি নি, তবে আমি বুঝতে পেরেছিলাম যে এটি ঠিক একই ক্রম যা উপরের কমান্ডটি তার আউটপুট ফিরিয়ে দিয়েছে
নাসকো

বিটিডাব্লু: বিএসডি ফাইন্ডের -sবর্ণানুক্রমিক আউটপুট বাছাই করার জন্য প্যারামিটার রয়েছে ।
lapo

উত্তর:


19

findক্রম আইটেম ডিরেক্টরি ডিরেক্টরি এন্ট্রি মধ্যে সংরক্ষণ করা হয় ডিরেক্টরি ট্রি ট্র্যাভারিং করা হবে। এটি (বেশিরভাগ ক্ষেত্রে) একই মেশিনে রান থেকে চালানো থেকে সামঞ্জস্য থাকবে এবং কোনও মুছে ফেলা না থাকলে মূলত "ফাইল / ডিরেক্টরি তৈরির আদেশ" হবে।

তবে কিছু ফাইল সিস্টেম সংক্রামক ক্রিয়াকলাপের অংশ হিসাবে ডিরেক্টরি এন্ট্রিগুলিকে পুনরায় অর্ডার করবে বা যখন প্রবেশের আকারটি প্রসারিত করা দরকার, তাই "কাঁচা" অর্ডার সময়ের সাথে পরিবর্তিত হওয়ার খুব কম সুযোগ থাকবে। আপনি যদি একটি সামঞ্জস্য অর্ডার চান তবে একটি অতিরিক্ত বাছাই পর্যায়ে আউটপুট খাওয়ান।


আপনার বিস্তারিত উত্তরের জন্য ধন্যবাদ! সুতরাং, যদি আমার এফএম ট্রান্সমিটার (আমার পূর্ববর্তী মন্তব্যটি দেখুন) অনুসন্ধান আদেশটি তাদের তালিকাভুক্ত করে যাতে ট্র্যাক খেলেন, আমি তাদের কীভাবে খেলতে চাই তা নিয়ন্ত্রণ করতে পারছি না।
নাসকো

ঠিক আছে, ফ্ল্যাশ কার্ডটি সম্ভবত একটি ফ্যাট ফাইল সিস্টেম ব্যবহার করে এবং আমি যদি সঠিকভাবে মনে রাখি তবে ফাইল সিস্টেম ডিবাগারের সাথে FAT এন্ট্রিগুলির ক্রমটি পরিচালনা করা খুব সহজ। এটি সম্ভবত সম্ভবত নতুন ফ্ল্যাশ থেকে বর্তমান ফ্ল্যাশ থেকে সংগীতগুলি অনুলিপি করার উপযুক্ত হতে পারে, আপনি যে ক্রমে সেগুলি প্লে করতে চান তা সহজ হতে পারে।
ভ্যাটাইন

এই ধরণের ধারাবাহিকতার দরকারী অ্যাপ্লিকেশনগুলির মধ্যে একটি হ'ল ধীরে ধীরে অগ্রগতি অনুমান করা যা প্রথমে ফাইলগুলির তালিকা অনুসারে বাছাই করার জন্য find /path/ -exec ...আরও দ্রুত চলমান find /path/
অ্যান্ড্রে

6

অর্ডার নিয়ন্ত্রণ করার জন্য আপনার কোনও নির্দিষ্ট আউটপুট অর্ডারের উপর নির্ভর করা উচিত নয় findএবং এর পরিবর্তে sortএবং অন্যান্য উপায় ব্যবহার করা উচিত ।


2

আমি যথাক্রমে ইউএনআইএক্স / লিনাক্সে 1984/1991 সাল থেকে কাজ করছি এবং আমাকে প্রথম কমান্ডটি শিখিয়েছি। লিনাক্স / জিএনইউ বর্তমান সন্ধানের কমান্ডে আপনার প্রয়োজনীয় সমস্ত কিছু রেখেছিল তাই এটির সাথে চারপাশে খেলুন।

আউটপুট সন্ধানের জন্য এখানে কয়েকটি সহায়ক টিপস tips -প্রিন্টফ বিকল্পটি আপনাকে আরও জটিল বাছাই এবং ফাইল তথ্য উপস্থাপনা সক্ষম করতে প্রচুর বিকল্প দেয়। এটি এই জাতীয় সমস্যার জন্য সেরা। আপনার জন্য কী কাজ করবে তা দেখতে এটি খেলুন। -প্রিন্টফ ব্যবহার করে আপনি নিজের পছন্দ অনুযায়ী ফলাফলগুলি কাস্টমাইজ এবং ডিলিট করতে পারেন। যখন আপনাকে ফলাফলগুলি পোস্ট করার দরকার হয় তখন এটি বেশ খানিকটা সহায়তা করে। আমি আশা করি এটা কারো সাহায্যে লাগবে.

  1. আপনি যদি -l ব্যবহার করেন এবং ফাইলের নাম অনুসারে বাছাই করতে চান তবে 11 তম ক্ষেত্রটি ফাইলের নাম যাতে আপনি নিম্নলিখিতটি করতে পারেন। সাজানোর-কে বিকল্পটি বাছাই করতে একাধিক ক্ষেত্র নিতে পারে।

    সন্ধান / পাথ-এলএস | সাজান-কে 11

  2. আপনি যদি আরোহী বা অবতরণ ক্রমে তারিখ / সময় দ্বারা সূক্ষ্ম শস্য নিয়ন্ত্রণ আইসর্ট চান তবে -প্রিন্টফ বিকল্পটি ব্যবহার করুন। অধিক বিবরণের জন্য ম্যানুয়ালটি দেখুন, তবে নিম্নলিখিতটি একটি উদাহরণ যা ভগ্নাংশ সেকেন্ড সহ মুদ্রণ করবে তাই এটি খুব নির্ভুল।

উদাহরণ তারিখ / সময়: 2016-09-17 + 12: 09: 57.9013929800

find /path -printf "%T+ %p\n" | sort -n # Ascending

find /path -printf "%T+ %p\n" | sort -nr # Descending

তারিখ / সময় স্ট্রিংয়ের অক্ষরগুলি না করে এটি করার আর একটি উপায়।

উদাহরণ তারিখ / সময়: 20160917120013.8101685040

find /path -printf "%AY%Am%Ad%AH%AM%AS %p\n" | sort -n
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.