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

লিনাক্সে ডিফ্ট কমান্ড

downloading and installing python

downloading and installing python

সুচিপত্র:

Anonim

diff একটি হ'ল কমান্ড-লাইন ইউটিলিটি যা আপনাকে দুটি ফাইলের সাথে লাইন দিয়ে তুলনা করতে দেয়। এটি ডিরেক্টরিগুলির বিষয়বস্তুর তুলনা করতে পারে।

patch কমান্ড ব্যবহার করে এক বা একাধিক ফাইলের মধ্যে পার্থক্য সম্বলিত একটি প্যাচ তৈরি করতে diff কমান্ডটি সাধারণত ব্যবহৃত হয়।

diff কমান্ডটি কীভাবে ব্যবহার করবেন

পৃথক কমান্ডের বাক্য diff নিম্নরূপ:

diff… FILES

diff কমান্ডটি সাধারণ, প্রসঙ্গ এবং ইউনিফাইড বিন্যাসকে সর্বাধিক সাধারণ হিসাবে একাধিক ফর্ম্যাটে আউটপুট প্রদর্শন করতে পারে। আউটপুটে ফাইলগুলির মধ্যে কোন রেখাগুলি পরিবর্তন করতে হবে সে সম্পর্কিত তথ্য অন্তর্ভুক্ত রয়েছে যাতে তারা অভিন্ন হয়ে যায়। ফাইলগুলি মিললে কোনও আউটপুট তৈরি হয় না।

কোনও ফাইলে কমান্ড আউটপুট সংরক্ষণ করতে, পুনঃনির্দেশ অপারেটরটি ব্যবহার করুন:

diff file1 file2 > patch

, পৃথক কমান্ড কীভাবে কাজ করে তা diff আমরা নীচের দুটি ফাইল ব্যবহার করব:

file1

Ubuntu Arch Linux Debian CentOS Fedora file2

Kubuntu Ubuntu Debian Arch Linux Centos Fedora

সাধারণ ফরম্যাট

এর সরল আকারে যখন diff কমান্ডটি কোনও বিকল্প ছাড়াই দুটি পাঠ্য ফাইলগুলিতে চালিত হয়, এটি স্বাভাবিক বিন্যাসে একটি আউটপুট উত্পাদন করে:

diff file1 file2

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

0a1 > Kubuntu 2d2 < Arch Linux 4c4, 5 < CentOS --- > Arch Linux > Centos

সাধারণ আউটপুট ফর্ম্যাটটিতে এক বা একাধিক বিভাগ থাকে যা পার্থক্য বর্ণনা করে। প্রতিটি বিভাগ এর মতো দেখাচ্ছে:

change-command < from-file-line… --- > to-file-line…

0a1 , 2 2d2 এবং 4 4c4, 5 2d2 4c4, 5 চেঞ্জ কমান্ড। প্রতিটি পরিবর্তন কমান্ডের নীচে বাম থেকে ডানে নীচে রয়েছে:

  • প্রথম ফাইলটিতে রেখার লাইন নম্বর বা রেঞ্জ.এই বিশেষ পরিবর্তন চরিত্র। দ্বিতীয় ফাইলটিতে রেখার লাইন নম্বর বা রেঞ্জ।

পরিবর্তনের চরিত্রটি নিম্নলিখিতগুলির মধ্যে একটি হতে পারে:

  • a - লাইন যুক্ত করুন। c - লাইন পরিবর্তন করুন। d - লাইনগুলি মুছুন।

চেঞ্জ কমান্ডটি সম্পূর্ণ লাইনগুলি অনুসরণ করে যা সরানো ( < ) এবং ফাইল ( > ) এ যুক্ত হয় added

এর আউটপুট ব্যাখ্যা করা যাক:

  • 0a1 1 - ফাইল 1 এর প্রথম দিকে দ্বিতীয় ফাইলের 1 লাইন যুক্ত করুন ( 0 লাইন পরে)।
    • > Kubuntu - দ্বিতীয় লাইনের রেখাটি যা উপরে বর্ণিত হিসাবে প্রথম ফাইলটিতে যুক্ত করা হয়েছে।
    2 2d2 2 - প্রথম ফাইলটিতে লাইন 2 মুছুন। d চিহ্নের পরে 2 অর্থ লাইনটি মোছা না হলে এটি দ্বিতীয় ফাইলের লাইন 2 এ প্রদর্শিত হবে।
    • < Arch Linux - মুছে ফেলা লাইন।
    4c4, 5 - দ্বিতীয় ফাইল থেকে 4-5 লাইন দিয়ে প্রথম ফাইলে 5 লাইনটি পরিবর্তন করুন (পরিবর্তন করুন)।
    • < CentOS - প্রতিস্থাপনের জন্য প্রথম ফাইলের লাইন। --- - বিভাজক। > Arch Linux এবং > Centos - প্রথম ফাইলটিতে লাইনটি প্রতিস্থাপন করে দ্বিতীয় ফাইল থেকে লাইন।

প্রসঙ্গ বিন্যাস

কনটেক্সট আউটপুট ফর্ম্যাটটি ব্যবহার করা হলে, পৃথক কমান্ড ফাইলগুলির মধ্যে পৃথক লাইনগুলির চারপাশে প্রসঙ্গের কয়েকটি লাইন প্রদর্শন করে।

-c বিকল্পটি diff ফর্ম্যাটে আউটপুট উত্পাদনের জন্য diff বলে:

diff -c file1 file2

*** file1 2019-11-25 21:00:26.422426523 +0100 --- file2 2019-11-25 21:00:36.342231668 +0100 *************** *** 1, 6 **** Ubuntu - Arch Linux Debian ! CentOS Fedora --- 1, 7 ---- + Kubuntu Ubuntu Debian ! Arch Linux ! Centos Fedora

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

*************** *** from-file-line-numbers **** from-file-line… --- to-file-line-numbers ---- to-file-line…

  • from-file-line-numbers এবং to-file-line-numbers - প্রথম এবং দ্বিতীয় ফাইলের লাইন সংখ্যা বা কমা-বিভাজিত রেখা, যথাক্রমে। from-file-line এবং to-file-line - লাইন যে পৃথক এবং প্রসঙ্গের লাইন:
    • দুটি স্পেস দিয়ে শুরু করা রেখাগুলি প্রসঙ্গের রেখা, উভয় ফাইলে একই লাইন the বিয়োগ চিহ্ন ( - ) দিয়ে শুরু হওয়া লাইনগুলি সেই ফাইলগুলি যা দ্বিতীয় ফাইলের কোনও কিছুর সাথে মিল নয়। দ্বিতীয় ফাইলটিতে রেখাগুলি অনুপস্থিত plus প্লাস প্রতীক ( + ) দিয়ে শুরু হওয়া লাইনগুলি এমন লাইন যা প্রথম ফাইলের কোনও কিছুর সাথে মিল নয়। প্রথম ফাইলটিতে রেখাগুলি অনুপস্থিত exc বিস্ময়কর চিহ্ন দিয়ে শুরু করা লাইনগুলি ( ! ) দুটি রেখার মধ্যে পরিবর্তন করা লাইন। প্রতিটি গ্রুপের লাইনের সাথে শুরু ! প্রথম ফাইলটি থেকে দ্বিতীয় ফাইলটিতে একটি অনুরূপ মিল রয়েছে।

আসুন আউটপুটটির সর্বাধিক গুরুত্বপূর্ণ অংশগুলি ব্যাখ্যা করুন:

  • এই উদাহরণে আমাদের কেবলমাত্র একটি বিভাগ রয়েছে পার্থক্যগুলি বর্ণনা করে। *** 1, 6 **** এবং --- 1, 7 ---- প্রথম এবং দ্বিতীয় ফাইল যা এই বিভাগে অন্তর্ভুক্ত রয়েছে তার রেখাগুলির রেঞ্জটি আমাদের জানায় --- 1, 7 ---- লাইন Ubuntu , দেবিয়ান, Fedora এবং শেষ ফাঁকা লাইন উভয় ফাইলের ক্ষেত্রে একই। এই লাইনগুলি ডাবল স্পেস দিয়ে শুরু হচ্ছে L লাইন - Arch Linux প্রথম ফাইলটি থেকে - Arch Linux দ্বিতীয় ফাইলের কোনও কিছুর সাথে মিল নয়। যদিও এই লাইনটি দ্বিতীয় ফাইলটিতেও বিদ্যমান, অবস্থানগুলি পৃথক। দ্বিতীয় ফাইল থেকে লাইন + Kubuntu প্রথম ফাইলটিতে কিছুই মিলছে ! CentOS sলাইন ! CentOS প্রথম ফাইল এবং লাইন থেকে ! CentOS ! Arch Linux ! Arch Linux এবং ! CentOS দ্বিতীয় ফাইল থেকে ! CentOS ফাইলগুলির মধ্যে পরিবর্তিত হয়।

ডিফল্টরূপে প্রসঙ্গ রেখার সংখ্যা তিনটিতে ডিফল্ট হয়। অন্য নম্বর নির্দিষ্ট করতে -C ( --contexts ) বিকল্পটি ব্যবহার করুন:

diff -C 1 file1 file2

*** file1 2019-11-25 21:00:26.422426523 +0100 --- file2 2019-11-25 21:00:36.342231668 +0100 *************** *** 1, 5 **** Ubuntu - Arch Linux Debian ! CentOS Fedora --- 1, 6 ---- + Kubuntu Ubuntu Debian ! Arch Linux ! Centos Fedora

ইউনিফাইড ফর্ম্যাট

ইউনিফাইড আউটপুট ফর্ম্যাটটি প্রসঙ্গ বিন্যাসের একটি উন্নত সংস্করণ এবং একটি ছোট আউটপুট উত্পাদন করে।

ইউনিফাইড ফরমেটে আউটপুট প্রিন্ট করতে diff বলার জন্য -u বিকল্পটি ব্যবহার করুন:

diff -u file1 file2

--- file1 2019-11-25 21:00:26.422426523 +0100 +++ file2 2019-11-25 21:00:36.342231668 +0100 @@ -1, 6 +1, 7 @@ +Kubuntu Ubuntu -Arch Linux Debian -CentOS +Arch Linux +Centos Fedora

আউটপুটটি ফাইলগুলির নাম এবং টাইমস্ট্যাম্প এবং এক বা একাধিক বিভাগের সাথে পার্থক্য বর্ণনা করে শুরু হয়। প্রতিটি বিভাগ নিম্নলিখিত ফর্ম গ্রহণ করে:

*************** @@ from-file-line-numbers to-file-line-numbers @@ line-from-files…

  • @@ from-file-line-numbers to-file-line-numbers @@ - এই বিভাগে অন্তর্ভুক্ত প্রথম এবং দ্বিতীয় ফাইল থেকে রেখার লাইন নম্বর বা রেঞ্জ। line-from-files - লাইন যে পৃথক এবং প্রসঙ্গের রেখা:
    • দুটি স্পেস দিয়ে শুরু হওয়া রেখাগুলি প্রসঙ্গের রেখা, উভয় ফাইলে একই লাইন the বিয়োগ চিহ্ন ( - ) দিয়ে শুরু হওয়া লাইনগুলি প্রথম ফাইলটি থেকে সরানো হয় are প্লাস চিহ্ন ( + ) দিয়ে শুরু হওয়া লাইনগুলি প্রথম ফাইল থেকে যুক্ত করা লাইনগুলি।

অবহেলার ঘটনা

আপনি উপরের উদাহরণগুলিতে লক্ষ্য করতে পারেন, diff ডিফল্ট কমান্ডটি কেস সংবেদনশীল।

diff উপেক্ষা করার জন্য ডিফার্ট বলার জন্য -i বিকল্পটি ব্যবহার করুন:

diff -ui file1 file2

--- file1 2019-11-25 21:00:26.422426523 +0100 +++ file2 2019-11-25 21:00:36.342231668 +0100 @@ -1, 6 +1, 7 @@ +Kubuntu Ubuntu -Arch Linux Debian +Arch Linux CentOS Fedora

উপসংহার

পার্থক্যগুলির জন্য পাঠ্য ফাইলের তুলনা করা লিনাক্স সিস্টেম প্রশাসকদের জন্য একটি সাধারণ কাজ for

পৃথক কমান্ড ফাইলের সাথে লাইন লাইন তুলনা করে। আরও তথ্যের জন্য, আপনার টার্মিনালে man diff টাইপ করুন।

ডিফার টার্মিনাল