সন্ধানের সাথে ইস্যু: অবৈধ প্রাকটিকেট '-সিলিট'


3

আমি চালানোর চেষ্টা করি (ইউনিক্স-শেল, উইন 7):

find . -maxdepth 1 -name "*.jpg" -size -50k -delete

এবং ত্রুটি পেতে:

find: invalid predicate '-delete'

কোন ইঙ্গিত?

উত্তর:


5

আপনি জার্সগুলি কার্যকর খুঁজে পেতে পারেন , কেবল অনুসন্ধান এবং মুছে ফেলা অপারেশনগুলিতেই নয়, আপনি অন্যদের মধ্যে যেখানে আপনি কোনও কমান্ড চালানোর পরে পাঠ্য প্রক্রিয়া করতে চান। এক্ষেত্রে,

find . -maxdepth 1 -name "*.jpg" -size -50k | xargs rm -f

সর্বদা নিশ্চিত করুন যে আপনি প্রথমে xargs এর আগে "প্রতিধ্বনি" দিয়ে আপনার কাজটি পরীক্ষা করেছেন (যাতে আপনি এটি চালানোর আগে কমান্ডগুলি দেখতে কেমন তা দেখতে পারেন)। যা দেখতে হবে:

find . -maxdepth 1 -name "*.jpg" -size -50k | xargs echo rm -f

সহ সংস্করণে echoপাওয়া ফাইলগুলি অন্তর্ভুক্ত করবে না find; এটি ইনপুটটিকে উপেক্ষা করে এবং আক্ষরিক স্ট্রিং 'xargs rm -f' প্রতিধ্বনিত করে।
চিপনার

ধন্যবাদ - xargs হ'ল স্লোস্টেস্ট, আমি অনুমান করি .. একটি জিনিস যদিও: স্পেস সহ ফাইলের নামগুলি কীভাবে অন্তর্ভুক্ত করা যায়। IFS=$'\t\n'আমার জন্য কাজ করে নি .. এবং, এমন কোনও আদেশ আছে যা ফাইলগুলি স্থায়ীভাবে মুছে ফেলার পরিবর্তে বিনটিতে রাখবে?
কে

@ কে - কোন সমস্যা নেই! স্পেসগুলির জন্য, আপনি যা করতে চাইবেন তা হ'ল "-i" পতাকার সাহায্যে জার্গে আর্গুমেন্ট স্থাপন করুন। পছন্দ ... find . | xargs -i rm -f "{}" সুতরাং -i "আমি যুক্তিটি প্রকাশ করতে যাচ্ছি" এবং {} "এখানে আমি এটি অবস্থান করতে চাই যেখানে" বলে says তারপরে আপনার শেলটি বলার জন্য উদ্ধৃতি "আরে মানুষ, এই জিনিসটির মধ্যে আবর্জনা আছে, তাই, হ্যাঁ কেবল উদ্ধৃতিতে স্টাফটি নিয়ে যান"।
দাগবিটিভি

@ চেপনার - উফ! আমার echoভুল জায়গায় ছিল। আমি এটিকে স্থানান্তরিত করেছি, এটি এখন যেমনটি বলেছিলাম ঠিক তেমনভাবে কাজ করা উচিত।
ডগবিটিভি

@ কে - পুনরায় পড়ুন, এগুলিকে একটি বাক্সে রাখার বিষয়ে, আমি তাদেরকে / টেম্পে স্থানান্তরিত করব। আপনি পজিশনটি ব্যবহার করে একই জিনিসটি করতে পারেন, যেমন ....find . | xargs -i mv "{}" /tmp/
ডগবিটিভি

4

findআপনি যে ইউনিক্স শেলটি চালাচ্ছেন তার উইন্ডো থেকে প্রাপ্ত সংস্করণটিতে (উইন্ডোজ থেকে) শিকারীর অভাব রয়েছে -delete

একটি সম্ভাব্য বিকল্প হ'ল:

find . -maxdepth 1 -name "*.jpg" -size -50k -exec rm {} \;
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.