নীচের মতো কিছু হ'ল আমি যা করছি তার পরে, তবে আমার কোডটি কার্যকর হয় না, আমি কীভাবে পালাতে পারি {}
এবং যাই হোক না কেন+
;
find ./ -maxdepth 1 -type d -name '.*' -exec \
find {} -maxdepth 1 -type f -name '*.ini' -exec \
md5sum \{\} \\; \;
এই ইউনিক্স - এবং - লিনাক্স প্রশ্নটি দেখার পরে , আমি দেখতে পেয়েছি যে নিম্নলিখিত কোডটি কাজ করে, তবে এটি এর মতো সন্ধান করেও বাসা বাঁধে না এবং আমি সন্দেহ করি যে এই বিশেষ কাজটি করার আরও ভাল উপায় আছে।
find ./ -maxdepth 1 -type d -name '.*' \
-exec bash -c 'for x; do
find "$x" -maxdepth 1 -type f -name "*.ini" \
-exec md5sum \{\} \;; \
done' _ {} \+
find -exec
শেল (যেমন উপরে) এর সমস্ত বেহাল উদ্ধৃতি এবং পালানোর সীমাবদ্ধতা ছাড়াই বাসা বাঁধার কোন উপায় আছে?
অথবা এর বহু পরামিতিগুলির মিশ্রণ ব্যবহার করে এটি একটি একক ফাইন্ড কমান্ডে সরাসরি করা যেতে পারে?
find
তবে যদি এটি find
করতে না পারেন তবে কেন হাতিয়ার হিসাবে find
এত সম্মানিত (?)? ফাইলগুলি সন্ধানের জন্য ব্যবহার করতে চান? ... আমি পরবর্তীতে সন্ধান পেয়েছি যে find ./ -maxdepth 2 -path '.*/*.ini' -type f -exec md5sum {} \+
আমার পরিস্থিতিতে ঠিক কাজ করে (jw013 এর রেফারেন্সটি -prune
আমাকে পুরুষ পৃষ্ঠায় নিয়ে এসেছিল), তবে আমি আশ্চর্য হয়েছি যদি এটি একটি শক্ত পদ্ধতি (জেনারিতে) হয়। আমি সত্যিই কখনই ব্যবহার করি নি find
(লিনাক্সের এক বছরেরও কম সময়ের মধ্যে) যেমনটি locate
আমার প্রয়োজন প্রায় সম্পন্ন হয়েছে তাই এটি অজানা অঞ্চল।
-path
পরীক্ষা ঠিক কি আমি আপনাকে পরামর্শ দিচ্ছি যাচ্ছে হয়।