বিদ্যমান ফাইলটি ওভাররাইট করার সময় আমি কীভাবে বাশ আমাকে সতর্ক করব?


34

আমি মনে করি শিরোনামটি বেশ স্ব-ব্যাখ্যামূলক। সকল আমি চাই আমাকে সাবধান করতে যখনই আমি ব্যবহার করার সময় একটি বিদ্যমান ওভাররাইট করার প্রচেষ্টা ব্যাশ হয় cpবা mv। আমি সত্যিই কিছু সাহায্য কৃতজ্ঞ। :)

উত্তর:


43

আপনার ইন্টারেক্টিভ মোড ব্যবহার করা উচিত যা নিশ্চিত করে যে আপনি 'ওভাররাইটের আগে প্রম্পট' পেয়েছেন

cp --interactive
mv --interactive

বা সংক্ষেপে

cp -i
mv -i

আরও জানতে আপনার কমান্ড লাইনে টাইপ করুন man cpবা লিখুন man mv


2
সুতরাং আমি অনুমান করি যে কমান্ডগুলি করা হয়েছে আমার .Bashrc এও উপস্ব হিসাবে চলেছে। অনেক ধন্যবাদ. আপনার সাহায্য সমর্থন করি. :)
সায়ন্তনখন

3
প্রকৃতপক্ষে! আপনি alias rm='rm -i'আপনার .bashrc এর মতো কিছু সংযুক্ত করতে পারেন বা আপনার .bash_aliases এর থেকে আরও ভাল করতে পারেন। পোস্টে আরও পড়ুন আমি কীভাবে স্থায়ী বাশ ওরফে তৈরি করব?
don.joey

2
তবে আমি কিছু ভেবেছি আমি লিখিত কিছু স্ক্রিপ্ট সম্পর্কে কি। তারা কি এলিয়াসেড সিপি এবং এমভি ব্যবহার করবে বা সাধারণটি ব্যবহার করবে?
sayantankhan

@ বোল্ট you৪ এটি নির্ভর করে যে আপনি কোথায় আপনার উরফ সংজ্ঞাটি রেখেছেন তবে সাধারণত এটি সাধারণটি ব্যবহার করবে।
জান ওয়ার্চো

12

আপনি set -o noclobberআপনার .bashrc এ রাখতে চান। আপনি যদি আউটপুট পুনঃনির্দেশ দ্বারা কোনও বিদ্যমান ফাইলকে ওভাররাইট করার চেষ্টা করেন এটি একটি ত্রুটি বাড়িয়ে তুলবে।

$ set -o noclobber
$ echo one > afile
$ echo two > afile
bash: afile: cannot overwrite existing file

আপনি পুনর্নির্দেশকে বিশেষ সিনট্যাক্সের সাথে কাজ করতে বাধ্য করতে পারেন:

$ echo two >| afile
$ cat afile
two

http://www.gnu.org/software/bash/manual/bashref.html#Redirecting-Output

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