"সিপি: বাদ দেওয়া ডিরেক্টরি" বলতে কী বোঝায়?


408

আমি নিম্নলিখিত আদেশ জারি করেছি:

sudo cp ~/Transfers/ZendFramework-1.11.4-minimal/library/Zend/* ~/public_html/cmsk.dev/library/

যখন আমি এটি করি, আমি নিম্নলিখিত বার্তাগুলি পাওয়া শুরু করি:

cp: omitting directory `Tag' 
cp: omitting directory `Test' 
cp: omitting directory `Text' 
cp: omitting directory `TimeSync' 
cp: omitting directory `Tool' 
cp: omitting directory `Translate' 
cp: omitting directory `Uri' 
cp: omitting directory `Validate' 

এবং তাই ...

আমি কেন এই বার্তা পেতে পারি?

উত্তর:


535

ডিফল্টরূপে, cpকেবলমাত্র সরাসরি ফাইলগুলিতে অনুলিপি করে, এবং ডিরেক্টরিতে সাব-ডিরেক্টরি নয়। বার্তাটি cp: omitting directory 'directory'আপনাকে সতর্ক করে দেয় যে উল্লিখিত ডিরেক্টরিটি অনুলিপি করা হয়নি।

এটি করতে, -r(বা --recursive) বিকল্পটি নির্দিষ্ট করুন :

sudo cp -r ~/Transfers/ZendFramework-1.11.4-minimal/library/Zend/* ~/public_html/cmsk.dev/library/

ম্যানুয়েল পৃষ্ঠা (কমান্ড: man cp) উপলব্ধ অপশন একটি ওভারভিউ ধারণ করে।


2
অনেক ধন্যবাদ. আমি ভেবেছিলাম যে * এটির সাথে একরকম পুনরাবৃত্তি হবে deal কিন্তু না. : ডি আবার ধন্যবাদ। :)
এমইএম

11
@ এমইএম: *বাশ দ্বারা প্রসারিত হয়েছে, দ্বারা নয় cpecho আপনার কমান্ডের সামনে রেখে এটি পরীক্ষা করুন । প্রসারিত হলে, এটি পূর্ববর্তী ...library/Zend/(সমস্ত ফাইল এবং ডিরেক্টরি) এর সাথে সমস্ত কিছু মেলে ।
লেকেনস্টেইন

সুসংবাদটি এর omitting directory 'directory'অর্থ এই নয় যে এটি ডিরেক্টরিটি মুছে ফেলছে।
বিশ্ব মিশ্র

@ লেকেনস্টেইন আমি একজন ব্যবহারকারীর বিষয়বস্তু অন্য একজনের কাছে অনুলিপি করার চেষ্টা করছিলাম। সুতরাং আমি এটির সাথে অনুলিপি করার চেষ্টা করার chmod a+rx ~/পরে আমি ব্যবহারকারীর কাছ থেকে অনুমতি পেয়েছি cp /home/2110/* /home/2111/যার ফলে অনুমতি অস্বীকার করা হয়েছে states যেখানে আমি ভুল ছিলাম মন্তব্য করতে দুঃখিত কারণ আমি সদৃশ প্রশ্ন জিজ্ঞাসা করতে পারবেন না। আমি দ্রুত উত্তর দেওয়ার জন্য আশা করি :)
জাসিনথ প্রিমকুমার

@ জেসিথপ্রেমকুমার ইন ফাইলগুলি /home/21102110 ব্যবহারকারীর মালিকানাধীন রয়েছে তবে ফাইলগুলি 2111 এর মালিকানাধীন /home/2111বলে মনে করা হচ্ছে the মালিককে সেট করতে, এমন কিছু ব্যবহার করুন sudo chown -R 2111 /home/2111
লেকেনস্টেইন

40

বার্তাটির অর্থ হল cpতালিকাভুক্ত ডিরেক্টরিগুলি অনুলিপি করা হয়নি। এটি ডিফল্ট আচরণ cp- কেবলমাত্র ফাইলগুলি অনুলিপি করা হয়, আপনি সেগুলি স্পষ্টভাবে উল্লেখ করছেন বা ব্যবহার করছেন কিনা তা বিবেচনা না করেই *। আপনি যদি ডিরেক্টরিগুলি অনুলিপি করতে চান তবে -rস্যুইচটি ব্যবহার করুন যার অর্থ "পুনরাবৃত্তি"।


16

এখানে কয়েকটি জিনিস যা যাচাই করা দরকার:

  1. ব্যবহার করবেন না sudo। আপনার এটির দরকার নেই, আপনার নিজের হোম ডিরেক্টরিতে স্টাফ লেখার অনুমতি ইতিমধ্যে আপনার কাছে রয়েছে।

  2. আপনি মেনু থেকে লুকানো ফাইলগুলি দেখান / দেখান নির্বাচন করে গ্রাফিকাল ফাইল ম্যানেজারে সহজেই লুকানো ফাইল এবং ডিরেক্টরিগুলি দেখতে পারেন। বা টিপে Ctrl- H

  3. ডিরেক্টরি এবং এর বিষয়বস্তু অনুলিপি করতে -Rআপনার cpকমান্ডের বিকল্পটি ব্যবহার করতে হবে।

  4. / হোম আপনার হোম ডিরেক্টরি নয়। / হোম / ব্যবহারকারীর নাম। সুতরাং আপনি সম্ভবত ভুল জায়গা থেকে অনুলিপি করার চেষ্টা করছেন।

  5. শেলটি কেস সংবেদনশীল, তাই ~ / ডাউনলোডগুলি এবং ~ / ডাউনলোডগুলি দুটি আলাদা জিনিস।


2

আপনি যখন কোনও ডিরেক্টরি অনুলিপি করছেন:

cp dir1 copy_of_dir1

আপনি কেবল এবং dir1তার মধ্যে থাকা ফাইলগুলিকেই কেবল এবং হুবহু অনুলিপি করছেন , সুতরাং শেষে আপনি একটি নতুন ডিরেক্টরি কাঠামো সমাপ্ত করবেন যখন কাঠামোর অস্তিত্ব নেই।

অন্য কথায় পরে এটি অনুলিপি করা হয়েছে এটা বলতে হবে যে আমার বিষয়বস্তু হল file1, file2ইত্যাদি; তবে এই ফাইলগুলি অনুলিপি করা হয়নি এবং এটি এতে বিদ্যমান নেই।

সুতরাং এই সমস্যাটি ঠিক করতে cpডিফল্টরূপে আসতে পারে ডিরেক্টরিগুলি অনুলিপি করে না এবং এড়িয়ে যায় আপনি যদি -rবিকল্পটি নির্দিষ্ট না করেন যা সমস্ত ফাইলকে পুনরাবৃত্তভাবে অনুলিপি করে।


1

এটি বলার omitting directoryকারণ হ'ল কারণ cpএবং সমস্ত অনুলিপি ইউটিলিটিগুলি, যা আমি জানি, ফাইলগুলি অনুলিপি করা শুরু করার আগে অনুলিপি করার জন্য ফাইল এবং উপ-ডিরেক্টরিগুলির একটি তালিকা তৈরি করুন। যখন --recursiveঅপশন অনুপস্থিত, একটি উপ-ডিরেক্টরির এই তালিকা বন্ধ bumped দেখায়। যেমন, বাদ দেওয়া আপনার কপিরাইট তালিকা থেকে অপসারণকে বোঝায়, আপনার উত্স মিডিয়া থেকে নয়। আমি বিশ্বাস করি এটি বার্তার অর্থকে সম্বোধন করে।


0

CP তারপর আপনি আপনি যোগ করতে পারেন পাখির ডিরেক্টরি কপি করতে চান তাহলে কমান্ড, ফাইল এবং ডিরেক্টরি, না নেস্টেড ডিরেক্টরি কপি করতে ব্যবহৃত হয় -r যে পরে, যেখানে -r রিকার্সিভ মানে।

সিনট্যাক্স যা আপনি অনুসরণ করতে পারেন (রুট হিসাবে চলমান):

cp -r /source/dir/* /destination/ 

অথবা

cp --recursive /source/dir/* /destination/

-1

ধরুন আপনার দুটি ডিরেক্টরি 'ট্যাগ' এবং 'টেস্ট' রয়েছে

আপনি যদি 'টেগ' ডিরেক্টরিটি 'টেস্ট' ডিরেক্টরিতে ব্যবহার করতে চান তবে কপি করতে চান

$ : cp -r Tag Test (case sensitive)

উপরের কোড সহ বেশিরভাগই সমস্যাটি সমাধান করা হবে যদি না এবং আপনি নীচের বার্তাগুলির মতো পান

cp: omitting directory `Tag' 
cp: omitting directory `Test'

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

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