কমান্ড লাইনে অ্যাম্পারস্যান্ডের মূল্যায়নটি কীভাবে এড়ানো যায়?


14

কমান্ড লাইনে কোনও গুগল ম্যাপস নির্দেশিকা ইউআরএল ইনপুট করার সময় (টার্মিনালের মাধ্যমে ক্রোমিয়াম ব্রাউজার দিয়ে খোলার জন্য &) ইউআরএলে একটি অ্যাম্পারস্যান্ড ( ) থাকে তবে ইউনিক্স স্টাফ ইউনিক্স স্টাফ হওয়ার কারণে টার্মিনালটি সেখানে ভেঙে যায়। টার্মিনালে আমি টাইপ করতে পারি এমন কিছু কি আছে যখন কমান্ডটি আসলে অম্পারস্যান্ডের মতো আচরণ করা হবে?

উইল; অ্যাম্প; কাজ করে?

উত্তর:


16

আপনার ঠিকানাটি উদ্ধৃতিতে রাখা দরকার:

chromium-browser 'http://whatever.com/?x=1&y=2'

ঠিক আছে, আমার শেষ প্রবন্ধটি ছিল, তবে সামনের দিকে নয় ... এটি ব্যাখ্যা করে। ধন্যবাদ.
লিরন

7

উদ্ধৃতিগুলি এটি ঠিক করে দেবে তবে আপনি ব্যাক-স্ল্যাশ সহ জিনিসগুলি এড়াতে পারবেন:

echo http://whatever.com/?x=1\&y=2

এটিকে আরও ভাল বলা না হওয়া, এটি এই জাতীয় পরিস্থিতির জন্য কেবল অন্য একটি বিকল্প।


1

এটি আসলে এই ক্ষেত্রে গুরুত্বপূর্ণ হবে না, তবে একক উদ্ধৃতি এবং ডাবল উদ্ধৃতিগুলির মধ্যে পার্থক্য রয়েছে।

ডাবল কোট বিশেষ অক্ষর যেমন '$' এবং উদ্ধৃতিগুলি স্থান করে দেবে, যেখানে একক উদ্ধৃতিগুলি ক্লোজিং একক উদ্ধৃতি ব্যতীত সমস্ত কিছুকে অক্ষরে অক্ষরে বিবেচনা করে।

উভয়ই একসাথে পাঠ্যটিকে গোষ্ঠীভূত করবে, যার ফলে ক্রোমিয়াম এটি একক যুক্তি হিসাবে দেখায় এবং "; # &" এর মতো অক্ষরগুলির সেই প্রসঙ্গে কোনও বিশেষ অর্থ নেই।

এটি ডাবল উদ্ধৃতিগুলির মধ্যে একটি ডাবল উদ্ধৃতি থেকে বাঁচতে '\' এর ব্যবহার এবং একটি ব্যাকস্ল্যাশ নিজেই দেখায়:

mat@sen:~$ echo "a&bc\\#de\"f"
a&bc\#de"f

একক উদ্ধৃতি সহ কিছুই পরিবর্তন হয় না:

mat@sen:~$ echo 'a&bc\\#de\"f'
a&bc\\#de\"f

উদ্ধৃতিগুলি ছাড়াই '&' এটিকে দুটি কমান্ডে বিভক্ত করে:

mat@sen:~$ echo a&bc\\#de\"f
[1] 2619
a
bc\#de"f: command not found
[1]+  Done                    echo a
[1]+  Done                    echo a

সাধারণত এক প্রকারের উদ্ধৃতি নিয়ে কাজ করার সময় আপনি এটিকে অন্য ধরণের সাথে গুটিয়ে রাখতে পারেন, তবে আপনি এটিকে নিয়ে সমস্যার মধ্যে পড়তে পারেন:

mat@sen:~$ echo "'a'bc$foo"
'a'bc

একক উদ্ধৃতিগুলি প্রতিস্থাপন করা হয় না, তবে '$' হয়। নিম্নলিখিত বাক্য গঠন যদিও কাজ করে:

mat@sen:~$ echo $'a\'bc$foo'
a'bc$foo
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.