আমি প্রতিটি ফাইল মুছতে চাই, তবে ফোল্ডারটির কাঠামো রাখি। কোন উপায় আছে?
দ্রষ্টব্য: (আমি জিএনইউ ব্যাশ ব্যবহার করছি 4.1.5)।
আমি প্রতিটি ফাইল মুছতে চাই, তবে ফোল্ডারটির কাঠামো রাখি। কোন উপায় আছে?
দ্রষ্টব্য: (আমি জিএনইউ ব্যাশ ব্যবহার করছি 4.1.5)।
উত্তর:
এটা চেষ্টা কর:
find . ! -type d -exec rm '{}' \;
এটি বর্তমান ওয়ার্কিং ডিরেক্টরিের নীচে ডিরেক্টরিগুলি বাদ দিয়ে প্রতিটি ফাইল মুছে ফেলবে। এই আদেশের সাথে অত্যন্ত সতর্কতা অবলম্বন করুন।
find
আপনার মেশিনের সংস্করণ যদি এটি সমর্থন করে তবে আপনি এটি ব্যবহার করতে পারেন
find . ! -type d -delete
find
কমান্ড কখনো উদ্ধৃতি চিহ্ন দেখতে পায়। এটি {}
চিহ্নিতকারীকে কেবল একটি যুক্তি হিসাবে দেখবে ।
-exec command {} +
" এবং এটি " -exec command ;
" প্রদর্শন করে। আমি \;
অতীতে কেবল কখনও '{}' ব্যবহার করি নি।
আপনি find
প্রতিটি ফাইল সনাক্ত করতে কমান্ডটি ব্যবহার করতে পারেন তবে ডিরেক্টরি কাঠামো বজায় রাখতে পারেন:
$ find /some/dir -type f -exec rm {} +
এই ইউনিক্স এবং লিনাক্স প্রশ্নোত্তর শিরোনাম অনুসারে: কিছু শেলের জন্য nu} গনু সন্ধান করে এবং মাস্কিং - কোনটি? , {}
একক টিক্সের সাথে পালাতে ( '
) বাশের মতো আধুনিক দিনের শাঁসগুলির সাথে আর প্রয়োজনীয় হবে না।
বর্তমান ডিরেক্টরি এবং উপ-ডিরেক্টরিগুলির প্রতিটি নিয়মিত ফাইল পুনরাবৃত্তভাবে মুছে ফেলার সহজ উপায়:
zsh -c 'rm **/*(.)'
টাইপ অনুসারে ফাইলের সাথে ম্যাচ করার জন্য কেবল zsh এর গ্লোব্বিং কোয়ালিফায়ার রয়েছে । তবে rm
কমান্ড ডিরেক্টরিতে কাজ করে না, সুতরাং ব্যাশে আপনি ব্যবহার করতে পারেন
shopt -s globstar
rm **/*
এটি rm
যদিও ছাড়া অন্য আদেশগুলির জন্য কাজ করে না । সাধারণভাবে, আপনি ব্যবহার করতে পারেন find
:
find . -type f -delete
বা যদি আপনার find
সমর্থন না করে -delete
:
find . -type f -exec rm {} +
ডিরেক্টরি কাঠামো মোছার সাথে পাথ এবং এর উপ ডিরেক্টরিগুলি (সময়কালে ফিল্টারিং) থেকে ফাইলগুলি মুছতে আমার অনুরূপ প্রয়োজনীয়তা ছিল।
এবং আমি নীচের ফর্ম্যাটটি ব্যবহার করেছি যা আমার পক্ষে কাজ করেছিল।
সন্ধান করুন / পরীক্ষা 123 / হোম / টেস্ট_ফিল_হিপ / ডেটা / এনএফএস -মাইটাইম +6-টাইপ চ-এক্সেক আরএম {} \;
সিনটেক্স: সন্ধান করুন (ফাইলের পথ) -মটাইম (দিনের চেয়ে বড় বা কম) -প্রকার f -exec rm {} \;
-type: "d" ডিরেক্টরিতে ফাইলের "f" ধরণের উল্লেখ করুন -exec: rd এক্সিকিউট করুন: {}: ফাইন্ড কমান্ডের আউটপুট
দ্রষ্টব্য: এটি ব্যবহারের আগে এটি পরীক্ষা করে দেখুন। দয়া করে নির্দ্বিধায় দ্বিধা বোধ করুন বা আমি কিছু মিস করেছি তবে আপডেট করুন।
find ... rm
কাঠামোটি ইতিমধ্যে আচ্ছাদন করা হয়েছে, আমি নিশ্চিত নই যে এই প্রশ্নের নতুন উত্তর হিসাবে এটি একটি মূল্যবান অবদান।