আমি cpকমান্ডটি ব্যবহার করার চেষ্টা করছি এবং একটি ওভাররাইট জোর করব।
আমি চেষ্টা করেছি cp -rf /foo/* /bar, তবে প্রতিটি ওভাররাইটটি নিশ্চিত করার জন্য আমাকে অনুরোধ করা হচ্ছে।
আমি cpকমান্ডটি ব্যবহার করার চেষ্টা করছি এবং একটি ওভাররাইট জোর করব।
আমি চেষ্টা করেছি cp -rf /foo/* /bar, তবে প্রতিটি ওভাররাইটটি নিশ্চিত করার জন্য আমাকে অনুরোধ করা হচ্ছে।
উত্তর:
আপনি কি করতে পারেন yes | cp -rf xxx yyy, কিন্তু আমার gutfeeling বলছেন যে আপনি যদি রুট হিসাবে এটা করতে - আপনার .bashrcবা .profileএকজন ওরফে হয়েছে cpথেকে cp -i, সবচেয়ে আধুনিক ব্যবস্থা (প্রাথমিকভাবে আরএইচ-ডেরাইভেটিভস) রুট প্রোফাইলে যে।
আপনি aliasকমান্ড প্রম্পটে চালিয়ে বা which cpকেবলমাত্র ডাক্তারিটি চেক করে বিদ্যমান অ্যালিয়াসগুলি পরীক্ষা করতে পারেন cp।
আপনার যদি কোনও কোনও এলিফ সংজ্ঞায়িত করা থাকে তবে চলমান চলমান unalias cpসেশনের জন্য এটি বাতিল করে দেবে, অন্যথায় আপনি কেবল এটি আপনার শেল প্রোফাইল থেকে সরাতে পারবেন।
আপনি সাময়িকভাবে একটি উপনামকে বাইপাস করতে পারেন এবং একটি কমান্ডের অ-অ্যালয়েজড সংস্করণটি এটির সাথে পূর্বনির্ধারণ করে ব্যবহার করতে পারেন \, উদাহরণস্বরূপ\cp whatever
¯\_(ツ)_/¯এটি সম্পর্কে
(primarily RH-derivatives)মন্তব্য যোগ করেছেন :)
unalias cpআপনার যা যা অনুলিপি করতে হবে তা করার পরে এবং অনুলিপি করার পরে , আপনি তার দ্বারা পূর্বের ডিফল্টটিতে সেট করতে পারেন alias cp='cp -i'। এর পরে, চালান alias cpযাতে আপনি যাচাই করতে পারেন যে এটি ডিফল্ট উপন্যাসে ফিরে এসেছে।
cpইতোমধ্যে এরকম কোনও কিছুর সাথে ইতিমধ্যে এলিয়াস হওয়ার কারণে এটি ঘটে cp -i। cpসরাসরি কল করার কাজ করা উচিত:
/bin/cp -rf /zzz/zzz/* /xxx/xxx
এর কাছাকাছি যাওয়ার আরও একটি উপায় হ'ল yesকমান্ডটি ব্যবহার করা :
yes | cp -rf /zzz/zzz/* /xxx/xxx
yesকমান্ড সরবরাহ করে । অত্যধিক হাসিখুশি. এবং কোনও দিন আমি এটি ব্যবহার করতে পারি।
হিসাবে অন্যান্য উত্তরের কিছু বলেছেন, আপনি সম্ভবত উপনাম কোথাও যা মানচিত্র ব্যবহার cpকরতে cp -iবা অনুরূপ কিছু। ব্যাকস্ল্যাশ এর আগে আপনি কোনও পূর্বস্বত্ত্ব ছাড়াই একটি কমান্ড চালাতে পারেন। আপনার ক্ষেত্রে, চেষ্টা করুন
\cp -r /zzz/zzz/* /xxx/xxx
ব্যাকস্ল্যাশ আপনার কল করা কোনও উপকরণ অস্থায়ীভাবে অক্ষম করবে cp।
cp, \cpকমান্ড ডাকা হবে cp। এটি দৌড়ানোর সমতুল্য বলে মনে হয় command cp।
আপনার সম্ভবত অন্য কোনও নাম আছে, ম্যাপিং cpহচ্ছে cp -i; কারণ ডিফল্ট সেটিংস সহ, cpওভাররাইট করতে বলবে না। আপনার .bashrc, আপনার .profileইত্যাদি পরীক্ষা করুন
সিপি ম্যানপেজ দেখুন : কেবলমাত্র -iপ্যারামিটার নির্দিষ্ট করা হলে cpওভাররাইট করার আগে প্রকৃতপক্ষে প্রম্পট হবে ।
আপনি aliasকমান্ডের মাধ্যমে এটি পরীক্ষা করতে পারেন :
$ alias
alias cp='cp -i'
alias diff='diff -u'
....
উপন্যাসটিকে অপরিবর্তিত করতে, ব্যবহার করুন:
$ unalias cp
অন্যান্য উত্তর হিসাবে যেমন বলা হয়েছে, এটির cpএকটি উপনাম হলে এটি সুখী হতে পারে cp -i।
আপনি একটি সংযুক্ত করতে পারবেন \আগে cpওরফে ছাড়া এটি ব্যবহার করতে কমান্ড।
\cp -fR source target
ডিফল্টরূপে cpএলিয়াস থাকে cp -i। আপনি এটি পরীক্ষা করতে পারেন, টাইপ aliasকরতে পারেন এবং আপনি এর মতো কিছু দেখতে পারেন:
alias cp='cp -i'
alias l.='ls -d .* --color=auto'
alias ll='ls -l --color=auto'
alias ls='ls --color=auto'
alias mv='mv -i'
alias rm='rm -i'
এই সমস্যাটি সমাধান করতে কেবল /bin/cp /from /toপরিবর্তে কমান্ড ব্যবহার করুনcp /from /to
cp সাধারণত এইভাবে aliated হয়
alias cp='cp -i' # i.e. ask questions of overwriting
যদি আপনি নিশ্চিত যে আপনি ওভাররাইটটি করতে চান তবে এটি ব্যবহার করুন:
/bin/cp <arguments here> src dest
সুতরাং আমি এটিকে অনেকটা ছাপিয়েছি কারণ আমি সিপি অ্যালাইজড cp -ivরেখেছি এবং আমি একটি ঝরঝরে কৌশল পেয়েছি। দেখা যাচ্ছে যে -iএবং -nউভয়ই পূর্বের ওভাররাইটের নির্দেশনা বাতিল -fকরে, না। তবে আপনি যদি -nfএটি ব্যবহার করেন তবে এটি সাফ করার ক্ষমতা যুক্ত করে -i। তাই:
cp -f /foo/* /bar <-- Prompt
cp -nf /foo/* /bar <-- No Prompt
বেশ ঝরঝরে? / necropost
cp -u ...
cp --update ...
কাজ করে।
ওরফে ছাড়া কমান্ডটি কল করার আরেকটি উপায় হ'ল commandবিল্ট ইন ব্যাশে ব্যবহার করা ।
command cp -rf /zzz/zzz/*
-n হ'ল "ওভাররাইট করা নয়" তবে তাঁর প্রশ্ন আপনি যে উত্তর দিয়েছেন তার সম্পূর্ণ বিপরীত।
এই নিশ্চিতকরণটি এড়াতে আপনি কেবল সিপি কমান্ডটি চালাতে পারেন নিখুঁত পাথ দিয়ে, এটি উপনামটি এড়িয়ে যাবে।
/ বিন / সিপি উত্স ফাইলের গন্তব্য
আপনি যদি বিশ্বব্যাপী স্তরে যেমন উপনাম রাখতে চান এবং কেবল আপনার স্ক্রিপ্টের জন্য পরিবর্তন করতে চান।
শুধু ব্যবহার করুন:
ওরফে সিপি = সিপি
এবং তারপরে আপনার ফলোআপ আদেশগুলি লিখুন।
আমি "সিপি-আই" নামটি সরিয়ে ফেলতে ইউলিয়াসকে সহজেই ব্যবহার করেছি, তারপরে অনুলিপিটি করব, তারপরে উপনামটি সেট করুন। :
unalias cp
cp -f foo foo.copy
alias cp="cp -i"
সর্বাধিক সুন্দর কোড নয়, তবে সেট করা সহজ এবং দক্ষ। আমি ইতিমধ্যে একটি সাধারণ সঙ্গে ইতিমধ্যে সেট সেট আছে কি না পরীক্ষা
alias |grep cp
এটা হয় না cp -i। আপনি যদি নিশ্চিতকরণের জন্য জিজ্ঞাসা করতে চান না, এটি হয় cp -n; উদাহরণ স্বরূপ:
cp -n src dest
অথবা ডিরেক্টরি / ফোল্ডারগুলির ক্ষেত্রে হ'ল:
cp -nr src_dir dest_dir
cp -iসিস্টেম দ্বারা সিমলিংক হয়েছে , যার অর্থ তারা ডিফল্টকে কাটিয়ে ওভাররাইটে চাপ দেওয়ার চেষ্টা করছে । মত শোনাচ্ছে আপনার প্রস্তাবিত সিনট্যাক্স হওয়ার জন্য যে বিভ্রান্ত হতে পারে, কিন্তু -nহবে প্রতিরোধ একটি ওভাররাইট করবে।