কম্পিউটার

কেন আপনার শেল স্ক্রিপ্টের স্ট্রিংগুলিতে ফাইল পাথগুলি মোড়ানো উচিত

আমি ভয়ংকর সম্পর্কে একটি থ্রেড জুড়ে হোঁচট খেয়েছি প্রোগ্রামিং ভুল এবং এটি পাওয়া গেছে:

https://github.com/MrMEEE/bumblebee-Old-and-abbandoned/commit/a047be85247755cdbe0acce6f1dafc8beb84f2ac

যেটিতে লাইনটি রয়েছে:

rm -rf /foo-bar-usr /lib/nvidia-current/xorg/xorg

দ্রষ্টব্য – আমি foo-bar- যোগ করেছি স্ট্রিং-এ যাতে আপনি এটি চালানোর চেষ্টা করলে, আমি যে বিষয়ে সতর্ক করছি সেটি তা করবে না –এমনকি আমার ক্লিপবোর্ডে থাকাও আমাকে নার্ভাস করে তোলে! .

এটি চালানো হলে কি হয়? এটি সম্পূর্ণ /usr/ মুছে ফেলে ডিরেক্টরি - মূলত আপনার কম্পিউটার bricking! একটি স্থানের কারণে সবই .

/usr এর পরে স্থানের কারণে , rm কমান্ড এটিকে অপসারণের জন্য দুটি পৃথক ডিরেক্টরি হিসাবে ব্যাখ্যা করে, একটি ভুল টাইপ করা পথ নয়।

যদি সেই পথটি উদ্ধৃতিতে মোড়ানো থাকে যাতে এটি একটি একক প্যারামিটার হিসাবে পাস করা হয়, তাহলে এটি ঘটত না।

বেশিরভাগ কমান্ড-লাইন উদাহরণগুলি এটি করবে না কারণ এটি একটি স্ক্রিপ্টের অর্থকে অস্পষ্ট করে তুলতে পারে বা এটি পড়া আরও কঠিন করে তুলতে পারে - তবে আপনি যদি সরাসরি কমান্ড লাইনে বিবৃতিগুলি কার্যকর করার পরিবর্তে স্ক্রিপ্ট লিখছেন এবং বিশেষ করে যদি আপনি ব্যবহারকারীর ইনপুট গ্রহণ করছে যেখানে তারা ভুলবশত স্থান ট্যাপ করতে পারে (কখনই না ব্যবহারকারীদের বিশ্বাস করুন) , এটি একটি সতর্কতা হিসাবে আপনার ফাইল পাথ মোড়ানো মূল্য.

আপনি ডেটা হারাতে চান না, এবং আপনি অবশ্যই অন্য কারো ডেটা হারাতে চান না।

এবং বরাবরের মতো - নিয়মিত আপনার ফাইল এবং আপনার সিস্টেম ব্যাক আপ করুন! আপনি কখনই জানেন না যে এই জাতীয় ভুল কখন কেটে যেতে পারে – এটি আপনার ভুলও নাও হতে পারে।


  1. কেন আপনার ডেটা বিকেন্দ্রীকরণ করা উচিত

  2. কেন আপনার ইমেলগুলি সংরক্ষণ করা উচিত এবং আপনি কীভাবে তা করতে পারেন

  3. আপনার শেল স্ক্রিপ্টে লুপ না হওয়া পর্যন্ত কীভাবে ব্যবহার করবেন

  4. আপনার আইফোনের নাম কীভাবে পরিবর্তন করবেন (এবং কেন আপনার উচিত)