আমি যে ডিরেক্টরিটির নাম পরিবর্তনশীল হবে তার টার্ক ব্যাকআপ নিতে চাই


0

আমি একটি শেল স্ক্রিপ্ট লেখার চেষ্টা করছি যাতে আমি প্রতিদিনের ভিত্তিতে তৈরি হওয়া ফোল্ডারগুলির টার ব্যাকআপ নিতে চাই।

উদাহরণস্বরূপ, আমার পিতামাতার ডিরেক্টরি নাম "লগ" এবং এই ডিরেক্টরিটির অধীনে প্রতিদিনের ভিত্তিতে একটি ডিরেক্টরি স্বয়ংক্রিয়ভাবে তৈরি হবে এবং সমস্ত শিশু ডিরেক্টরিতে (যা প্রতিদিনের ভিত্তিতে গঠিত হয়) প্রতি ঘণ্টায় বেশ কয়েকটি লগ ফাইল তৈরি হবে।

মূল উদ্দেশ্য: আমি গত 20 দিনের লগ ফাইল ধরে রেখে চাইল্ড ডিরেক্টরিটি (যা ডিরেক্টরি হিসাবে 01, 02, 03, 04, ......, 31 হিসাবে দৈনিক ভিত্তিতে তৈরি করা হয়) এর টার্ক ব্যাকআপ নিতে চাই। 30 দিনের ডিরেক্টরিগুলির বাইরে অর্থ কেবল প্রথম 10 দিনের জন্য করা উচিত।

find /usr/local/aryan/2015/logs -iname ".log" -mtime +10 -exec tar -cvzf backup_1.tar.gz" "VARIABLE_FOLDER_NAME" '{}' \;

অনুগ্রহ করে আমাকে "VARIABLE_FOLDER_NAME" প্রতিস্থাপন করতে সহায়তা করুন যার ফোল্ডারের নামগুলি অবশ্যই দৈনিক ভিত্তিতে তৈরি হবে।

উপরের কমান্ডের মাধ্যমে, এটি .log হিসাবে এক্সটেনশনযুক্ত সমস্ত ফাইল সন্ধান করবে এবং গত 10 দিনে কোনও পরিবর্তন হয়নি। এক্সটেনশন হিসাবে। लॉग সহ ফাইল রয়েছে এমন সমস্ত ফোল্ডারের এখন আমি ব্যাকআপ নিতে চাই


দুর্দান্ত, কোথায় আটকে গেছিস? আপনি এখন পর্যন্ত কি আছে তা দেখাতে পারেন?
পল

সন্ধান / usr / স্থানীয় / আরিয়ান / 2015 / লগস -iname " .লগ " -মটাইম +10-এক্সেক টার -cvzf ব্যাকআপ_1.tar.gz "" VARIABLE_FOLDER_NAME "" {} '
আর্যান

আমি উপরের কমান্ডটি ব্যবহার করছি তবে "VARIABLE_FOLDER_NAME" এর জায়গায় কী প্রতিস্থাপন করতে হবে তা আমি জানি না সেখানে আমাকে ফোল্ডারের নামটি নির্দিষ্ট করতে হবে যা প্রতিদিন তৈরি হবে এবং ফোল্ডারের নামটি 1, 2, 3, ....., 30 হবে
আর্য

দয়া করে সম্পাদনা কোন অতিরিক্ত তথ্য যোগ করুন, এবং কোড এবং অনুচ্ছেদ যোগ করার জন্য বিন্যাস সাহায্যের চেক করতে প্রশ্ন।
পল

কোন সমাধান? @ পল
আর্যান

উত্তর:


0

ফোল্ডারের নামটি তৈরি করা হয়েছে বা আপনার এটি তৈরি করার দরকার আছে?

আপনি যদি প্রতি তারিখে একটি নতুন ফোল্ডার তৈরি করে থাকেন তবে এরকম কিছু করুন

VARIABLE_FOLDER_NAME=`date '+%d'`
mkdir -f $VARIABLE_FOLDER_NAME

প্রতিদিন এটি মাসের তারিখের নামে একটি ফোল্ডার তৈরি করবে।

আপনি যদি নামটি শূন্য পূরণ করতে চান তবে এই জাতীয় কিছু চেষ্টা করুন

DATE_OF_MONTH=`date '+%d'`
VARIABLE_FOLDER_NAME=`printf "%02d" $DATE_OF_MONTH"

এগুলি সমস্ত এক লাইনে করা যেতে পারে:

DATE_OF_MONTH=`date '+%d'`; VARIABLE_FOLDER_NAME=`printf "%02d" $DATE_OF_MONTH"; find /usr/local/aryan/2015/logs -iname ".log" -mtime +10 -exec tar -cvzf backup_1.tar.gz "VARIABLE_FOLDER_NAME" '{}' \;

এক্সপিথ ব্যবহার করে আপনার ফায়ার কমান্ডের সাহায্যে ট্যারি রান দ্রুত চালানোর দিকে নজর দেওয়া যেতে পারে।

যদি ফোল্ডারটি ইতিমধ্যে তৈরি করা হয় তবে সেগুলি আপনাকে কী কী চয়ন করতে হবে তা খালি বের করতে হবে।

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