আমি find
ব্যাকআপ ফাইলগুলি সনাক্ত করতে এবং মুছতে ব্যবহার করছি তবে অনুসন্ধান থেকে নির্দিষ্ট ডিরেক্টরিগুলি বাদ দিতে চাই। ব্যাকআপ ফাইলের নামের মধ্যে বিনষ্ট পারে .bck
, bak
, ~
, অথবা backup
।
বাদ দিতে কেবল তিনটি ডিরেক্টরি সহ ন্যূনতম কার্যকারী উদাহরণ (এমডাব্লুই) কোডটি হ'ল:
#! /bin/bash
find . -type d \( -path "./.*" -o -path "./Music" -o -path "./Documents" \) -prune -o -type f \( -name "*.bck" -o -name "*.bak" -o -name "*~" -o -name "*.backup" \) -print0 | xargs -0 --no-run-if-empty trash-put
সিনট্যাক্সটি \( -path "dir1" -o -path "dir2" ... -o -path "dirN" \) -prune
কিছুটা বিশৃঙ্খল বলে মনে হচ্ছে, বিশেষত যদি বাদ দিতে প্রায় দশটি ডিরেক্টরি থাকে তবে আমি এমডব্লিউইতে কেবল তিনটি দেখিয়েছি।
কোনও ইনপুট ফাইল ব্যবহার করে বাদ দেওয়া ডিরেক্টরিগুলির তালিকা সহ বা আরে- বা তালিকার মতো কনস্ট্রাক্ট, যা পরিষেবাতে চাপ দেওয়া যেতে পারে তার চেয়ে আরও কি সুন্দর উপায় আছে?
আমি আমার আসল প্রশ্নটি লেখার সময় আরও স্পষ্ট না হওয়ার জন্য দুঃখিত।
এনবি: trash-put
একটি ইউটিলিটি যা ফাইলগুলি Trashcan
মুছার পরিবর্তে [1] এ সরিয়ে দেয়।