স্ট্রিং `! 23` কমান্ড লাইনে` ডকার` দিয়ে প্রতিস্থাপন করা হয়েছে


17

প্যারামিটার সহ আমার একটি মাভেন কমান্ড রয়েছে:

mvn test -Dcommon_password=!23foo

এই কমান্ড হিসাবে কার্যকর করা হচ্ছে

mvn test -Dcommon_password=dockerfoo

অর্থাত !23প্রতিস্থাপন করা হচ্ছে docker। কেন এটি ঘটে এবং আমি কীভাবে এড়াতে পারি?

উত্তর:


43

এটি হ'ল ইতিহাস সম্প্রসারণ : !23আপনার ইতিহাসে 23 তম কমান্ড দ্বারা প্রতিস্থাপন করা হয়েছে।

এড়াতে, একক উদ্ধৃতি ব্যবহার করুন:

mvn test '-Dcommon_password=!23foo'

5
অথবা এটি সম্পূর্ণরূপে অক্ষম করুন set +H/set +o histexpand
ilkkachu

12
এটি এমন একটি পাসওয়ার্ড যা সম্ভাব্যভাবে সমস্ত ধরণের শেল মেটাচার্যাক্টর ধারণ করতে পারে। এম। কিটের উত্তর হিসাবে যথাযথভাবে উদ্ধৃত করা এবং পলায়ন ঘটতে পারে এমন সম্ভাবনার মধ্যে কেবল একটিটিকে অক্ষম করার চেয়ে ভাল । অবশ্যই, প্রথম স্থানে প্রক্রিয়া আর্গুমেন্ট একটি পাসওয়ার্ড হচ্ছে না হবে আরও ভালো হয় । (-:
JdeBP

আমার প্রশ্নে @ জেডিবিপি আমি কেবল সরলতার কারণে একটি সরল পাঠ্যে একটি পাসওয়ার্ড দেখিয়েছি। একটি বাস্তব প্রকল্পে সেই যুক্তি জেনকিন্স গোপন শংসাপত্রের থেকে মূল্য নেয়। সুতরাং এটি মুখোশযুক্ত এবং নিরাপদ।
ভিটালি প্লেগোভ
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.