অ্যান্ড্রয়েড

কিভাবে লিনাক্সে ফাইল এবং ডিরেক্টরিগুলির নাম পরিবর্তন করতে হয়

পুনঃনামকরণ এবং Linux মধ্যে ফাইল ও ডিরেক্টরিগুলি মুছুন | লিনাক্স টিউটোরিয়াল # 8

পুনঃনামকরণ এবং Linux মধ্যে ফাইল ও ডিরেক্টরিগুলি মুছুন | লিনাক্স টিউটোরিয়াল # 8

সুচিপত্র:

Anonim

ফাইলগুলি এবং ডিরেক্টরিগুলির পুনঃনামকরণ আপনার লিনাক্স সিস্টেমে প্রায়শই সম্পাদন করা প্রয়োজন এমন একটি প্রাথমিক কাজ।

একটি একক ফাইলের নামকরণ করা সহজ তবে একসাথে একাধিক ফাইলের নামকরণ করা একটি চ্যালেঞ্জ হতে পারে, বিশেষত লিনাক্সে নতুন ব্যবহারকারীদের পক্ষে। আপনি জিইউআই ফাইল ম্যানেজার ব্যবহার করে বা কমান্ড-লাইন টার্মিনালের মাধ্যমে ফাইলগুলির নাম পরিবর্তন করতে পারেন।

এই টিউটোরিয়ালে, আমরা আপনাকে ফাইল এবং ডিরেক্টরিগুলির পুনরায় rename জন্য mv এবং rename কমান্ডগুলি কীভাবে ব্যবহার করব তা দেখাব।

এমভি কমান্ডের সাহায্যে ফাইলগুলির নাম পরিবর্তন করা হচ্ছে

mv কমান্ড (সরানো থেকে সংক্ষিপ্ত) ফাইলের এক নাম থেকে অন্য জায়গায় নাম পরিবর্তন করতে বা সরানোর জন্য ব্যবহৃত হয়। mv কমান্ডের বাক্য mv নিম্নরূপ:

mv source destination

source এক বা একাধিক ফাইল বা ডিরেক্টরি হতে পারে এবং destination একক ফাইল বা ডিরেক্টরি হতে পারে।

  • আপনি যদি একাধিক ফাইল source হিসাবে নির্দিষ্ট করেন তবে destination অবশ্যই একটি ডিরেক্টরি হতে পারে। এই ক্ষেত্রে, source ফাইলগুলি লক্ষ্য ডিরেক্টরিতে স্থানান্তরিত হয় I আপনি যদি কোনও একক ফাইলকে source হিসাবে নির্দিষ্ট করেন এবং destination লক্ষ্যটি একটি বিদ্যমান ডিরেক্টরি থাকে তবে ফাইলটি নির্দিষ্ট ডিরেক্টরিতে স্থানান্তরিত হয় a কোনও ফাইলের নাম পরিবর্তন করতে আপনাকে একটি ফাইল নির্দিষ্ট করতে হবে source হিসাবে একক ফাইল, এবং destination লক্ষ্য হিসাবে একক ফাইল।

উদাহরণস্বরূপ, file1.txt ফাইলটির নামকরণ file1.txt হিসাবে file2.txt আপনি:

mv file1.txt file2.txt

এমভি কমান্ডের সাহায্যে একাধিক ফাইলের নামকরণ

mv কমান্ডটি একবারে কেবলমাত্র একটি ফাইলের নাম পরিবর্তন করতে পারে তবে এটি অন্যান্য কমান্ডের সাথে যেমন ফাইন্ড বা অভ্যন্তরের ব্যাশ বা একাধিক ফাইলের পুনরায় নামকরণ করতে লুপগুলির জন্য বা ব্যাশের অভ্যন্তরে ব্যবহার করা যেতে পারে।

নিম্নলিখিত ডিরেক্টরিটি দেখায় কিভাবে বর্তমান ডিরেক্টরিতে সমস্ত .html ফাইলকে .html এক্সটেনশনটি .php পরিবর্তন করে লুপের জন্য ব্যাশ ব্যবহার করতে হয়।

for f in *.html; do mv -- "$f" "${f%.html}.php" done

আসুন কোড লাইন লাইন বিশ্লেষণ করুন:

  • প্রথম লাইনটি একটি লুপ তৈরি করে এবং .html দিয়ে .html সমস্ত ফাইলের তালিকার দ্বারা পুনরাবৃত্তি করে। দ্বিতীয় লাইনটি তালিকার প্রতিটি আইটেমের জন্য প্রযোজ্য এবং ফাইলটিকে .html প্রতিস্থাপন করে .php একটি নতুন স্থানে নিয়ে যায়। অংশ ${file%.html} শেল প্যারামিটার সম্প্রসারণ ব্যবহার করে ফাইলের নাম থেকে .html অংশটি সরাতে .html বিভাগটির শেষ নির্দেশ করে one

উপরের মত একই অর্জনের জন্য আমরা mv কমান্ডটি mv ব্যবহার করতে পারি।

find. -depth -name "*.html" -exec sh -c 'f="{}"; mv -- "$f" "${f%.html}.php"' ;

-exec কমান্ডটি বর্তমান ডিরেক্টরিতে .html দিয়ে শেষ হওয়া সমস্ত ফাইল -exec কমান্ডের কাছে একে একে -exec স্যুইচ ব্যবহার করে -exec । স্ট্রিং {} বর্তমানে প্রক্রিয়া করা হওয়া ফাইলটির নাম।

উপরের উদাহরণ থেকে আপনি দেখতে পাচ্ছেন, mv কমান্ড ব্যবহার করে একাধিক ফাইলের নামকরণ করা সহজ কাজ নয় কারণ এর জন্য বাশ স্ক্রিপ্টিংয়ের ভাল জ্ঞানের প্রয়োজন।

পুনর্নবীকরণ কমান্ডের সাথে ফাইলগুলির নামকরণ

rename কমান্ড একাধিক ফাইলের নাম পরিবর্তন করতে ব্যবহৃত হয়। এই কমান্ডটি mv চেয়ে বেশি উন্নত কারণ এর জন্য নিয়মিত প্রকাশের কিছু প্রাথমিক জ্ঞান প্রয়োজন।

বিভিন্ন সিনট্যাক্স সহ rename কমান্ডের দুটি সংস্করণ রয়েছে। এই টিউটোরিয়ালে, আমরা পুনর্নবীকরণ কমান্ডের পার্ল সংস্করণটি ব্যবহার করব। যদি আপনার সিস্টেমে এই সংস্করণটি ইনস্টল না করা থাকে তবে আপনি সহজেই আপনার বিতরণের প্যাকেজ ম্যানেজার ব্যবহার করে এটি ইনস্টল করতে পারেন।

  • উবুন্টু এবং ডেবিয়ানে পুনরায় নাম ইনস্টল করুন

    sudo apt install rename

    CentOS এবং ফেডোরায় পুনরায় নাম ইনস্টল করুন

    sudo yum install prename

    আরচ লিনাক্সে পুনরায় নাম ইনস্টল করুন

    yay perl-rename ## or yaourt -S perl-rename

rename কমান্ডের বাক্য rename নিম্নরূপ:

rename perlexpr files

rename কমান্ড নির্দিষ্ট perlexpr নিয়মিত এক্সপ্রেশন অনুযায়ী সমস্ত files নাম পরিবর্তন করে। আপনি পার্ল সম্পর্কে এখানে নিয়মিত প্রকাশ করতে পারেন।

উদাহরণস্বরূপ, নিম্নলিখিত কমান্ডটি .html কে। .php এক্সটেনশন সহ সমস্ত ফাইল পরিবর্তন করবে:

rename 's/.html/.php/' *.html

আপনি নাম পরিবর্তন না করে ফাইলের নাম মুদ্রণ করতে -n আর্গুমেন্টটি ব্যবহার করতে পারেন।

rename -n 's/.html/.php/' *.html

আউটপুটটি এরকম কিছু দেখবে:

rename(file-90.html, file-90.php) rename(file-91.html, file-91.php) rename(file-92.html, file-92.php) rename(file-93.html, file-93.php) rename(file-94.html, file-94.php)

ডিফল্টরূপে, পুনর্নবীকরণ কমান্ড বিদ্যমান ফাইলগুলিকে ওভাররাইট করবে না। বিদ্যমান ফাইলগুলিকে অতিরিক্ত -f অনুমতি দেওয়ার জন্য -f পাস করুন Pass

rename -f 's/.html/.php/' *.html

পুনরায় নামকরণ আদেশটি কীভাবে ব্যবহার করতে হয় তার কয়েকটি আরও সাধারণ উদাহরণ নীচে:

  • আন্ডারস্কোর সহ ফাইলের নামগুলিতে স্থানগুলি প্রতিস্থাপন করুন

    rename 'y/ /_/' *

    ফাইলের নামগুলি ছোট হাতের অক্ষরে রূপান্তর করুন

    rename 'y/AZ/az/' *

    ফাইলের নামগুলি বড়হাতে রূপান্তর করুন

    rename 'y/az/AZ/' *

উপসংহার

এখন mv আপনার mv এবং কীভাবে ফাইলের নাম rename কমান্ড ব্যবহার করতে হবে তার একটি ভাল বোঝা উচিত। অবশ্যই লিনাক্সে ফাইলগুলির নাম পরিবর্তন করতে অন্যান্য কমান্ড রয়েছে যেমন mmv । কমান্ড লাইনের মাধ্যমে ভয় দেখানো নতুন লিনাক্স ব্যবহারকারীরা জিটিআইআই ব্যাচের পুনর্নামকরণ সরঞ্জামগুলি যেমন মাটামোরফোস ব্যবহার করতে পারেন।

এমভি টার্মিনালের নতুন নামকরণ করুন