স্ট্রিং ভেরিয়েবলকে তৃতীয় রূপে যুক্ত করতে কীভাবে?


36

আমার বাশে দুটি স্ট্রিং সংলগ্ন করা দরকার, যাতে:

string1=hello
string2=world

mystring=string1+string2

echo mystring উত্পাদন করা উচিত

ওহে বিশ্ব


টার্মিনাল কমান্ডও joinআপনার পক্ষে এটি করতে পারে।
লিও লোপোল্ড হার্টজ 준영

উত্তর:


38

কেবল ভেরিয়েবলকে একত্রিত করুন:

mystring="$string1$string2"

51

আপনি ব্যাশ ভেরিয়েবল প্যারামিটার ব্যবহার না করে বা অবিলম্বে এমন একটি চরিত্র যুক্ত করতে চান যা সনাক্তকারীর অংশ হিসাবে বৈধ হবে You আপনার প্যারামিটারগুলিতে বিশেষ অক্ষর অন্তর্ভুক্ত না হলে আপনার ডাবল উক্তি ব্যবহার করার দরকার নেই।

x=foo
y=bar
z=$x$y        # $z is now "foobar"
z="$x$y"      # $z is still "foobar"
z="$xand$y"   # does not work
z="${x}and$y" # does work, "fooandbar"
z="$x and $y" # does work, "foo and bar"

2
আমি যা খুঁজছিলাম এটি [z = "$ xand $ y" # কাজ করে না ..... z = "$ {x} এবং $ y" # কাজ করে, "ফুন্ডবার"]। ধন্যবাদ।
ব্ল্যাকিশ

18

আক্ষরিক স্ট্রিংগুলির সাথে আপনার যদি ভেরিয়েবলগুলি সংযুক্ত করতে হয়:

string1=hello
string2=world
mystring="some ${string1} arbitrary ${string2} text"

echo $mystring উত্পাদন করবে:

কিছু হ্যালো নির্বিচারে বিশ্বের পাঠ্য


6
আপনি যে ${var}কোনও সময় ফর্ম্যাটটি ব্যবহার করতে পারেন তবে আপনি কেবল তখনই প্রয়োজন যখন $varঅন্য বৈধ ভেরিয়েবল-নামের অক্ষরটি অনুসরণ করা হয় ... উদাহরণস্বরূপ: $vararbitary"ভারারাবিট্রি" নামের একটি ভেরিয়েবলের ব্যাখ্যা করবে, তবে আপনি এটি ব্যবহার করে এটি পেতে পারেন ${var}arbitary.... উফ, আমি খমের খালি দেখেছি .. তবে আমি মন্তব্যটি এখানে রেখে দিতে পারি।
পিটার.ও

11

আপনি যদি অনেকগুলি ভেরিয়েবল যুক্ত করতে চান তবে আপনি +=স্ট্রিং সংযোজন করতেও ব্যবহার করতে পারেন .. এটি পঠনযোগ্যতা বৃদ্ধি করতে পারে ..

mystring=${string1}
mystring+=${string2}
mystring+=${string3}
mystring+=${string4}
echo ${mystring}

অন্যান্য উত্তরের দ্বারা উল্লিখিত হিসাবে এখানে needed needed প্রয়োজন হয় না তবে আমি ব্যক্তিগতভাবে সবসময় কিছু সিন্টেক্স ত্রুটি এড়াতে এগুলি ব্যবহার করি।

+=এছাড়াও অ্যারে মান যোগ করতে ব্যবহার করা যেতে পারে: array+=($b)

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