সমস্ত সাব-ডিরেক্টরিতে ফাইলের সাথে মিলে যাওয়া ফাইলগুলি মুছুন


76

আমি কীভাবে লিনাক্সের অধীনে আমার সমস্ত সাব ডিরেক্টরিতে সমস্ত .swp ফাইলগুলি সরিয়ে ফেলতে পারি?


3
ট্র্যাশ-ক্লাইকের মতো প্রোগ্রামগুলি দেখতে ভুলবেন না যাতে আরএম ব্যবহারের পরিবর্তে আপনি মুছে ফেলতে পারেন। কোড.google.com/p/trash-cli (আপনি কেবল নীচের সমস্ত উত্তরগুলিতে 'ট্র্যাশ' দিয়ে 'আরএম' প্রতিস্থাপন করবেন))

উত্তর:


136

বর্তমান ডিরেক্টরি নীচে সমস্ত * .swp ফাইল সরান, findনিম্নলিখিত ফর্মগুলির একটিতে কমান্ডটি ব্যবহার করুন :

  • find . -name \*.swp -type f -delete

    -deleteবিকল্প সরাসরি ম্যাচিং ফাইল মুছে ফেলবে এটি মানে। এটি ওপির আসল প্রশ্নের সেরা মিল।

    এর -type fঅর্থ অনুসন্ধান কেবল ফাইলগুলি প্রক্রিয়া করবে process

  • find . -name \*.swp -type f -exec rm -f {} \;
    find . -name \*.swp -type f -exec rm -f {} +

    বিকল্পটি -execপ্রতি ফাইলটিতে একটি স্বেচ্ছাসেবক কমান্ড কার্যকর করতে সহায়তা করে। প্রথম রূপটি প্রতি ফাইল প্রতি কমান্ড চালাবে এবং দ্বিতীয়টি যতটা সম্ভব {}প্যারামিতি প্রতিস্থাপন করে যতটা সম্ভব কমান্ড চালাবে run

  • find . -name \*.swp -type f -print0 | xargs -0 rm -f

    আউটপুট টি পাইপিং xargsকরা সম্ভব প্রতি ফাইল-ফাইল কমান্ডগুলির চেয়ে জটিল আকারে ব্যবহৃত হয় -exec। বিকল্পটি একটি নতুন লাইনের পরিবর্তে ASCII NULL এর সাথে ম্যাচগুলি আলাদা করতে -print0বলে findএবং NULL- বিভক্ত ইনপুটটি আশা করতে -0বলে xargs। এটি পাইপটি হোয়াইটস্পেসযুক্ত ফাইলের জন্য নিরাপদ করে তোলে।

দেখুন man findআরো বিস্তারিত জানার এবং উদাহরণ জন্য।


16

find . -name '*.swp' -delete

মুছে ফেলা সত্ত্বেও ফাইলের নাম এম্বেড থাকা স্থানের জন্য যে কোনও ঝুঁকি সরিয়ে ফেলুন, ... অতিরিক্ত সুরক্ষার -type fজন্য কেবল ফাইলগুলির জন্য যুক্ত করা বিবেচনা করুন ।


4
find /path -type f -name "*.swp" -delete
find /path -type f -name "*.swp" -exec rm -f "{}" +;

bash 4.0

shopt -s globstar
rm -f /path/**/*.swp

2

আমার হোম ডিরেক্টরিতে অনুসন্ধানের জন্য (এবং জিএনইউ 'ফাইন্ড' এবং 'xargs' ব্যবহার করে), আমি ব্যবহার করব:

find $HOME -name '*.swp' -print0 | xargs -0 rm -f

' -print0' এবং ' -0' এর ব্যবহারের অর্থ হ'ল নামগুলি ASCII NUL '\ 0' অক্ষর দ্বারা সীমিত করা হবে এবং এটি ফাঁকা ইত্যাদি সহ ফাইলের পাথগুলি পরিচালনা করবে। আপনি যদি ভাবেন যে আপনার ডিরেক্টরিতে '.swp' দিয়ে শেষ হওয়া ডিরেক্টরিতে (বা ডিভাইস ফাইল, বা FIFOs, বা অন্যান্য নন-ফাইল) থাকতে পারে, আপনি 'সন্ধানের -type f' বিকল্পটি যুক্ত করতে পারেন । আপনার যদি কেবল ডিরেক্টরি থাকে তবে উপরের কমান্ডটি তাদের উচ্চস্বরে সরিয়ে ফেলতে ব্যর্থ হবে।

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