যেহেতু আপনি ব্যবহার করছেন bash, আপনি যদি আপনার স্ট্রিংটি একটি ভেরিয়েবলের মধ্যে সঞ্চয় করেন তবে আপনি এটি কেবল শেল-ই করতে পারেন:
uscore="this_is_the_string_to_be_converted"
arr=(${uscore//_/ })
printf %s "${arr[@]^}"
ThisIsTheStringToBeConverted
${uscore//_/ }_স্থানের সাথে সমস্ত প্রতিস্থাপন (....)করে, স্ট্রিংটিকে একটি অ্যারেতে বিভক্ত করে, ${arr[@]^}প্রতিটি উপাদানটির প্রথম অক্ষরকে আপার ক্ষেত্রে রূপান্তরিত করে এবং তারপরে printf %s ..সমস্ত উপাদান একের পর এক মুদ্রণ করে।
আপনি উট-কেসযুক্ত স্ট্রিংটিকে অন্য ভেরিয়েবলের মধ্যে সঞ্চয় করতে পারেন:
printf -v ccase %s "${arr[@]^}"
এবং পরে এটি ব্যবহার / পুনরায় ব্যবহার করুন, যেমন:
printf %s\\n $ccase
ThisIsTheStringToBeConverted
বা, এর সাথে zsh:
uscore="this_is_the_string_to_be_converted"
arr=(${(s:_:)uscore})
printf %s "${(C)arr}"
ThisIsTheStringToBeConverted
(${(s:_:)uscore})স্ট্রিংটিকে _একটি অ্যারেতে বিভক্ত করে (C)প্রতিটি উপাদানের প্রথম অক্ষরকে মূলধন দেয় এবং printf %s ...সমস্ত উপাদান একের পর এক মুদ্রণ করে ..
এটি অন্য ভেরিয়েবলে সংরক্ষণ করতে আপনি (j::)উপাদানগুলিতে যোগ দিতে পারেন :
ccase=${(j::)${(C)arr}}
এবং পরে এটি ব্যবহার / পুনরায় ব্যবহার করুন:
printf %s\\n $ccase
ThisIsTheStringToBeConverted
\U\2দ্বিতীয় গ্রুপের প্রাপ্ত পাঠ্যকে সমস্ত ক্যাপগুলিতে রূপান্তর করে। তুলনা করুন\u\2, যা বাক্য ক্ষেত্রে সারণি সন্নিবেশ করায় কেবল প্রথম অক্ষরকে মূলধন দিয়ে। (২) নীচে প্রদত্ত সমস্ত উদাহরণ "এই_আইস_এ_স্ট্রিং" "" এইআইএসএএসটিং "- তে অনুবাদ করবে - যা আপনি যা চেয়েছিলেন তা কিন্তু পড়তে কিছুটা শক্ত। আপনি এক-অক্ষরের শব্দের (সাবস্ট্রিং) বিশেষ ক্ষেত্রে আপনার প্রয়োজনীয়তাগুলি সংশোধন করতে চাইতে পারেন। … (চালিয়ে যাওয়া)