ইউনিক্সে এমভি এবং {সিপি + আরএম পুরানো ফাইল} এর মধ্যে কিছু পার্থক্য রয়েছে?


14
  • mv a b

  • cp a b;rm a

এই দুটি বিবৃতি সেট। তারা কি করে কিছু পার্থক্য আছে?


1
পারমাণবিক? যদিও আমি জানি না এমভি কমান্ডটি পারমাণবিক কিনা।
অ্যাড্রিয়ানো ভারোলি পিয়াজা

হ্যাঁ. কেন জিজ্ঞাসা করছ?

1
এখন, + এর mvসমান , যদিও প্রাক্তন ক্রস-ফাইল সিস্টেমের চালগুলির জন্য কাজ করবে (যা কেবলমাত্র + হয়ে যায় ), তবে পরেরটি ব্যর্থ হবে (যা ক্রস-ফাইল সিস্টেম হার্ড লিঙ্কগুলিকে সমর্থন করে না)। lnrmcprmln
ক্রিস জেস্টার-ইয়ং

প্রতিদিন একটি বিদ্যালয়ের দিন - যে কেউ এই ভাবনায় আসছেন যে কীভাবে এই ডিফল্ট আচরণটি ওভাররাইড করবেন আপনার কীভাবে --remove-destinationস্যুইচ প্রয়োজন - stackoverflow.com/a/9371263/409638
রবার্ট

উত্তর:


20

ধরা যাক যে ফাইলগুলি একই ফাইল সিস্টেমে রয়েছে, তার পরে এমভি ফাইল সিস্টেমে পয়েন্টার পরিবর্তন করে, যেখানে সিপি ফাইলের পুরো বিষয়বস্তু অনুলিপি করে এবং আরএম আবার পয়েন্টার পরিবর্তন করে। সুতরাং এমভি অনেক বেশি দক্ষ।


1
কিন্তু তারা ঠিক একই জিনিস, ডান?
লেজার

8
না, তারা না।

3
@ ই এসকে: নং দুটি পরিস্থিতি: ১. লক্ষ্যটি বিদ্যমান নেই। mvকেবলমাত্র ফাইলটির নাম পরিবর্তন করে (মূল ফাইলের মতো একই ইনোড)। cpনতুন ফাইলের জন্য একটি নতুন ইনোড তৈরি করে। 2. লক্ষ্য বিদ্যমান। mvএক ধাপে লক্ষ্য ফাইলটি এবং পুনরায় নামগুলি আনইলিংকগুলি (সরান)। cpলক্ষ্য ফাইলের ইনোডকে ওভাররাইট করে।
ক্রিস জেস্টার-ইয়ং

7
এছাড়াও mvকখনও অনুমতি বা মালিকানা পরিবর্তন করে না। কল্পনা করুন আপনি নিজের বাডির হোমডির থেকে একটি ফাইল নিজের বাড়ীতে নিয়ে যেতে চান। আপনি যদি mvএটি করেন তবে আপনি আপনার বাড়ির সাথে আপনার হোমডির ফাইলটি শেষ করবেন। আপনি না chownবা chmodও অনুমতি উপর নির্ভর করে এমনকি সংশোধন করতে বা এটি পড়ুন। আপনি যদি ফাইলটি cpঅনুসরণ করেন তবে আপনার নিজের rmহবে এবং সবকিছু ঠিক আছে।
লুডভিগ ওয়েইঞ্জিয়র

9

হ্যাঁ, এমভিতে একই ডিস্কে পারমাণবিক হওয়ার সম্ভাবনা রয়েছে, যেখানে সিপি এবং আরএম এর সংমিশ্রণ কখনও হয় না।

এটি ধরে নেওয়া হচ্ছে যে এমভি ব্যবহার করে বাস্তবায়ন করা হয়েছে rename(), যা কলটি যার গ্যারান্টি রয়েছে। উদাহরণস্বরূপ, এই নিউজগোষ্ঠী পোস্টটি দেখুন , যা পসিক্সের উদ্ধৃতি দিয়েছে:

এই নামকরণ () ফাংশনটি আইএসও সি স্ট্যান্ডার্ড দ্বারা নির্ধারিত নিয়মিত ফাইলগুলির সমতুল্য। এখানে এর অন্তর্ভুক্তি ডিরেক্টরিগুলিতে ক্রিয়াগুলি অন্তর্ভুক্ত করার জন্য এই সংজ্ঞাটি প্রসারিত করে এবং নতুন প্যারামিটার ইতিমধ্যে উপস্থিত একটি ফাইলের নাম রাখলে আচরণটি নির্দিষ্ট করে। এই স্পেসিফিকেশনের জন্য প্রয়োজন যে ফাংশনের ক্রিয়াটি পারমাণবিক হয়।


8

একই ফাইল সিস্টেমে এমভি একই ইনডকে (ফাইলের ডেটা এবং মেটাডেটা) নির্দেশ করে ডিরেক্টরি উল্লেখটি পরিবর্তন করে:

  • একটি পারমাণবিক অপারেশন (এটি অন্য প্রক্রিয়া ফাইল অপারেশন দ্বারা বাধা দেওয়া যায় না)
  • অতিরিক্ত ডিস্ক স্পেসের একটি তুচ্ছ পরিমাণ লাগে (ডিরেক্টরিতে অতিরিক্ত নাম)
  • ফাইল অনুমতি এবং মালিকানা সংরক্ষণ করে
  • ডেটা পরিমাণের উপর নির্ভর করে অনেক দ্রুত হতে পারে

অনুলিপি এবং অপসারণ

  • পারমাণবিক নয় (অন্য প্রক্রিয়া সিপি এবং আরএম কমান্ডের মধ্যে হস্তক্ষেপ করতে পারে)
  • স্বল্প সময়ের জন্য ডিস্কে দু'বার ফাইল ডেটা সংরক্ষণ করার প্রয়োজন হয় (সিপি এবং আরএম কমান্ডের মধ্যে)
  • ফাইল অনুমতি এবং মালিকানা ডিফল্ট পরিবর্তন করে
  • ডেটা পরিমাণের উপর নির্ভর করে অনেক ধীর বা এমনকি ব্যর্থ হতে পারে

4

উত্স এবং গন্তব্য যখন একই শারীরিক ভলিউমে থাকে, তখন প্রথম পন্থাটি কেবল একটি পুনরায় নামকরণ এবং খুব দ্রুত হয় (এমনকি ফাইল (গুলি) খুব বড় হলেও)।

cpএবং rmপ্রয়োজনীয় না থাকলেও সবসময় সমস্ত ডেটা লোড / সঞ্চয় করতে হবে।


3

এমভি সংক্ষেপে একটি "পুনরায় নামকরণ" অপারেশন। এর অর্থ ফাইলটি নিজেই ডিস্কের একই স্পটে রেখে যায়। কোনও প্রকৃত ফাইল অপারেশন করা হয় না।


3

পার্থক্যটি হ'ল এমভি ফাইল-বৈশিষ্ট্যগুলি সংরক্ষণ করে যখন সিপি ডিফল্টরূপে হয় না, উদাহরণস্বরূপ বর্তমান তারিখের জন্য তারিখটি তৈরির তারিখ নির্ধারণ করে।

এই ডিফল্টটিকে ওভাররাইড করতে, সর্বশেষ ডেটা সংশোধন, শেষ অ্যাক্সেসের সময়, ব্যবহারকারীর আইডি এবং গ্রুপ আইডি (কেবল এটির অনুমতি থাকলে), ফাইল অনুমতি বিট এবং এসআইডি এবং এসজিআইডি সংরক্ষণ করতে "সিপি-পি" ব্যবহার করুন বিট।


2

হ্যাঁ.

এমভি সহজেই ফাইলের নাম এবং অবস্থান সম্পর্কিত ফাইলের ফাইলের মেটাডেটা পরিবর্তন করে, যেখানে সিপি ফাইলের একটি পৃথক অনুলিপি তৈরি করে, এটি প্রথম ফাইলটি পুরোপুরি পড়তে হবে এবং তারপরে এটি অন্য লিখিত বিষয়বস্তুতে লিখতে হবে বলে অনেক বেশি সময় নেয়


2

ডিসি ব্যবহারের ক্ষেত্রে সিপি এবং আরএম অনেক বেশি ভারী এবং ডিস্ক স্থানের কারণে ব্যর্থ হতে পারে।

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