অনুলিপি করার সময় * এবং *। * এর মধ্যে পার্থক্য কী?


19

নিম্নলিখিত 2 কমান্ডের মধ্যে পার্থক্য কি?

cp -rp /dir1/*.* /dir2/
cp -rp /dir1/* /dir2/

12
যদিও উভয় উত্তর সঠিক, আমি মনে করি একটি জিনিস লক্ষ্য করা যায়। লুকায়িত ফাইল (ফাইল দিয়ে শুরু .মত .bashrc) আর কমান্ড সাথে অনুলিপি করা হয়নি। এই ফাইলগুলি অনুলিপি করতে আপনার স্পষ্টভাবে ইঙ্গিত করা উচিত যে এর মাধ্যমে .*সমস্ত ফাইল অনুলিপি করতে (লুকিয়ে থাকা সহ) আদেশটি হবেcp -rp /dir1/.* /dir1/* /dir2/
YoMismo

সংক্ষেপে, *.*এমএস-ডস / উইন্ডোজ এটি করার পদ্ধতি, যখন *ইউনিক্স / লিনাক্স উপায় way ইউনিক্স প্রত্যয় (ফাইল-সমাপ্তির পরে, .- এর মতো .txtবা অংশ) এর পরে অংশটি alচ্ছিক .jpg... এমএস-ডস-এ .(ডট) এবং প্রত্যয় প্রয়োজন ছিল, সুতরাং সমস্ত ফাইলের সাথে মেলানোর জন্য, একটি ব্যবহৃত হয়েছিল *.*- সমস্ত পাঠ্য-ফাইলের সাথে মিল রাখার জন্য , এক ব্যবহার করবে *.txt
বার্ড কোপ্পেরুদ

@ বার্ডকপ্পেরড প্রত্যয় প্রয়োজন ছিল না, নামের মতো FILENAMEবা এমনকি এমন ফাইলও থাকতে পারে FILE
Ruslan

1
@ রুসলান কিন্তু *.*ডস-তে এখনও নামযুক্ত ফাইলগুলির সাথে মেলে FILENAMEবা FILEকারণ, নামটি 'সত্যই' FILENAME.বা FILE.(একটি ফাঁকা এক্সটেনশন সহ) রয়েছে। ইউনিক্সে, নামটি 'সত্যই' FILENAMEবা FILEতাই *.*মিলছে না।
জোনাথন কাস্ট

1
@ রাস্লান এটি আসল ডসের জন্য প্রয়োজনীয় ছিল, উইন্ডোতে আর প্রয়োজন হয় না। পিছনে পুরানো দিনের , একটি একক *শুধুমাত্র মেলে দিবে FILE, আর না FILE.TXT
র্যান্ডম 832

উত্তর:


25

*.*কেবল মাঝের বা শেষে একটি ডটের সাথে ফাইলের নাম মেলে। উদাহরণ স্বরূপ:

abc.jpg
def. 

*উপরের ফাইলের নামের সাথেও মিলছে, এর সাথে কোনও নামও নেই যা বিন্দু নয়। উদাহরণ স্বরূপ:

data

6
সম্ভবত আরও মনে রাখবেন যে অ্যান্টি-আইডিয়ামটি *.*এমএস-ডস-এর সমস্ত ফাইল 8 + 3 ফাইলের নামের সাথে ফিরে মিলার সঠিক উপায় হিসাবে ব্যবহৃত হত। এমএস-ডস-এ, বিন্দুটি বাধ্যতামূলক (যদিও কোনও ফাইলের ক্ষেত্রে এক্সটেনশন নেই) imp
ট্রিপলি

11
@ মার্ক, না, আমি এটি মনে করি না। আপনার যদি ডটগ্লোব না থাকে
ডেভিড দাই

11
হু, আমি বুঝতে পারি না যে *.*ম্যাচগুলি foo.তবে তা নয় .foo। সেই অসম্পূর্ণতা ভয়ানক।
জেমসডলিন

9
@ জেমসডলিন, বাশ ম্যানুয়াল থেকে: ফাইলের নাম প্রসারণের জন্য যখন কোনও প্যাটার্ন ব্যবহার করা হয় তখন 'অক্ষর'। কোনও ফাইল নামের শুরুতে বা তত্ক্ষণাত্ স্ল্যাশ অনুসরণ করে অবশ্যই স্পষ্টভাবে মিলিত হওয়া উচিত, যতক্ষণ না শেল বিকল্প ডটগ্লোব সেট না করা থাকে।
ডেভিড দাই

1
@jamesdlin। ইউনিক্সের প্রথম দিন থেকে (প্রায় 1969), বিন্দু দিয়ে ডিরেক্টরি সূচনাগুলি গোপন হিসাবে বিবেচিত হত । মূলত এটি .(বর্তমান ডিরেক্টরি) এবং ..(মূল ডিরেক্টরি) প্রবেশদ্বারগুলি এড়িয়ে যাওয়া প্রয়োজন যা কোনও ডিরেক্টরিতে সর্বদা বিদ্যমান (এমনকি খালি ডায়ার)। রিচি এবং থম্পসন পরে এটি সমস্ত .*rcকনফিগার ফাইলগুলি (ডিফল্টরূপে) আড়াল করার জন্য একটি দরকারী বৈশিষ্ট্য হিসাবে বিবেচনা করেছিলেন এবং এই সমস্ত (লিডিং-ডট) "লুকানো" এন্ট্রি প্রদর্শন -aকরার lsজন্য একটি স্পষ্ট বিকল্প যুক্ত করেছিলেন । সুতরাং এটি ইউনিক্সের ইতিহাস জেনে খুব অবাক হওয়ার কিছু নেই। ইউনিক্সের একটি শীর্ষস্থানীয় বিন্দু "চিরকাল" থেকে বিশেষ।
আরিফেল

13

মনে করুন আপনার নীচের ফাইলগুলি এতে রয়েছে /dir1:

foobar  
foo.bar  
fo.ba  
foo1.bar2  
foobar1  
foobar2  

cp -rp /dir1/*.* /dir2/

এই আদেশটি কেবল নিম্নলিখিত ফাইলগুলি অনুলিপি করবে:

foo.bar  
fo.ba  
foo1.bar2 

cp -rp /dir1/* /dir2/

এটি সমস্ত ফাইল কপি করবে /dir1

শর্তটি উপ-ডিরেক্টরিগুলিতেও প্রযোজ্য /dir1..

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