বাশে ভেরিয়েবলগুলির সাথে কীভাবে কাজ করবেন

আপনি যদি স্ক্রিপ্টগুলি লিখতে চান এবং ওয়েব থেকে যে কোডটি কাটতে এবং আপনার লিনাক্স কম্পিউটারে পেস্ট করতে চলেছেন তা আপনি কী করতে চান তা পরিবর্তনশীলগুলি অত্যাবশ্যক। আমরা আপনাকে শুরু করব!

পরিবর্তনশীল 101

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

একটি ভেরিয়েবল তৈরি করতে, আপনি কেবল এর জন্য একটি নাম এবং মান সরবরাহ করুন। আপনার পরিবর্তনশীল নামগুলি বর্ণনামূলক হওয়া উচিত এবং তারা যে মূল্য রাখে তা আপনাকে স্মরণ করিয়ে দেয়। একটি পরিবর্তনশীল নাম কোনও সংখ্যার সাথে শুরু করতে পারে না, এর মধ্যে স্পেসও থাকতে পারে। এটি অবশ্য আন্ডারস্কোর দিয়ে শুরু করতে পারে। এগুলি ছাড়াও, আপনি উপরের- এবং ছোট ছোট বর্ণচিহ্নগুলির যে কোনও মিশ্রণ ব্যবহার করতে পারেন।

উদাহরণ

এখানে, আমরা পাঁচটি ভেরিয়েবল তৈরি করব। বিন্যাসটি নাম টাইপ করতে হবে, সমান চিহ্ন =, এবং মান। দ্রষ্টব্য সমান চিহ্নের আগে বা পরে কোনও স্থান নেই। একটি ভেরিয়েবল একটি মান প্রদান প্রায়শই হিসাবে উল্লেখ করা হয় বরাদ্দ ভেরিয়েবলের মান।

আমরা চারটি স্ট্রিং ভেরিয়েবল এবং একটি সংখ্যার ভেরিয়েবল তৈরি করব,এই বছর:

আমি = ডেভ
my_boost = লিনাক্স
him = পোপিয়ে
his_boost = पालक
এই_ইয়ার = 2019

একটি ভেরিয়েবলের মধ্যে থাকা মানটি দেখতে, ব্যবহার করুন প্রতিধ্বনি আদেশ আপনাকে অবশ্যই ডলার সাইন সহ ভেরিয়েবলের আগে থাকতে হবে $ যখনই আপনি নীচে প্রদর্শিত হিসাবে এটিতে থাকা মানটি উল্লেখ করেছেন:

প্রতিধ্বনি $ আমার_নাম
প্রতিধ্বনি $ my_boost
প্রতিধ্বনি $ এই_ইয়ার

আসুন একবারে আমাদের সমস্ত ভেরিয়েবল ব্যবহার করি:

প্রতিধ্বনি "$ আমার_পোস্টটি আমার কাছে যেমন _ তাঁর_বুস্ট তাকে c (সি) $ এই_ইয়ার"

ভেরিয়েবলের মানগুলি তাদের নামগুলি প্রতিস্থাপন করে। আপনি ভেরিয়েবলের মানগুলিও পরিবর্তন করতে পারেন। চলকটিতে একটি নতুন মান নির্ধারণ করতে,my_boost, আপনি যখন তার প্রথম মান নির্ধারিত করেছিলেন তখন আপনি কেবল যা করেছিলেন তা পুনরাবৃত্তি করুন:

my_boost = টকিলা

আপনি যদি পূর্ববর্তী আদেশটি পুনরায় চালনা করেন তবে আপনি এখন অন্যরকম ফলাফল পাবেন:

প্রতিধ্বনি "$ আমার_পোস্টটি আমার কাছে যেমন _ তাঁর_বুস্ট তাকে c (সি) $ এই_ইয়ার"

সুতরাং, আপনি একই কমান্ডটি ব্যবহার করতে পারেন যা একই ভেরিয়েবলগুলি উল্লেখ করে এবং যদি আপনি ভেরিয়েবলের মধ্যে থাকা মানগুলি পরিবর্তন করেন তবে বিভিন্ন ফলাফল পেতে পারেন।

আমরা পরে ভেরিয়েবল উদ্ধৃত করার বিষয়ে কথা বলব। আপাতত, এখানে কিছু জিনিস মনে রাখবেন:

  • একক উদ্ধৃতিতে একটি পরিবর্তনশীল ' আক্ষরিক স্ট্রিং হিসাবে বিবেচিত হয়, ভেরিয়েবল হিসাবে নয়।
  • উদ্ধৃতি চিহ্নগুলিতে পরিবর্তনশীল " ভেরিয়েবল হিসাবে গণ্য করা হয়।
  • ভেরিয়েবলের মান ধরে রাখতে আপনাকে ডলার সাইন সরবরাহ করতে হবে $.
  • ডলার চিহ্ন ছাড়া একটি পরিবর্তনশীল $ কেবলমাত্র ভেরিয়েবলের নাম সরবরাহ করে।

আপনি একটি ভেরিয়েবলও তৈরি করতে পারেন যা বিদ্যমান ভেরিয়েবল বা ভেরিয়েবলের সংখ্যা থেকে এর মান নেয়। নিম্নলিখিত কমান্ড একটি নতুন ভেরিয়েবল নামক সংজ্ঞায়িত করে পান_ও_আর বছর, এবং এটি এর সম্মিলিত মান নির্ধারণ করে my_boost এবং এই বছর পরিবর্তনশীল:

পানীয়_এই বছর = "$ আমার_পোস্ট $ এই_ইয়ার"
প্রতি বছর ইকো ড্রিংক_

স্ক্রিপ্টগুলিতে ভেরিয়েবল কীভাবে ব্যবহার করবেন

স্ক্রিপ্টগুলি সম্পূর্ণ ভেরিয়েবল ছাড়াই হ্যামস্ট্রং হবে। ভেরিয়েবলগুলি নমনীয়তা সরবরাহ করে যা কোনও স্ক্রিপ্টকে একটি নির্দিষ্ট, সমাধানের চেয়ে সাধারণ করে তোলে। পার্থক্যটি চিত্রিত করার জন্য, এখানে একটি স্ক্রিপ্ট রয়েছে যা ফাইলগুলির মধ্যে গণনা করে / দেব ডিরেক্টরি

এটি একটি পাঠ্য ফাইলে টাইপ করুন এবং তারপরে এটি সংরক্ষণ করুন fcnt.sh ("ফাইল গণনা" এর জন্য):

# !!

স্ক্রিপ্টটি চালানোর আগে আপনাকে এটিকে কার্যকর করতে হবে, নীচের মত দেখানো হয়েছে:

chmod + x fcnt.sh

স্ক্রিপ্টটি চালানোর জন্য নিম্নলিখিতটি লিখুন:

./fcnt.sh

এটি ফাইলের সংখ্যা মুদ্রণ করে / দেব ডিরেক্টরি এখানে কিভাবে এটা কাজ করে:

  • একটি পরিবর্তনশীল বলা হয় ফোল্ডার_ টু_কাউন্ট সংজ্ঞায়িত করা হয়, এবং এটি "/ dev" স্ট্রিংটি ধরে রাখতে সেট করে।
  • আরেকটি পরিবর্তনশীল, যাকে বলা হয়ফাইল_কাউন্ট, সংজ্ঞায়িত করা. এই পরিবর্তনশীল একটি কমান্ড প্রতিস্থাপন থেকে তার মান নেয়। এটি প্রথম বন্ধনীগুলির মধ্যে কমান্ড বাক্যাংশ $( )। মনে রাখবেন এখানে ডলারের চিহ্ন রয়েছে $ প্রথম বন্ধনীর আগে। এই নির্মাণ $( ) প্রথম বন্ধনীগুলির মধ্যে আদেশগুলি মূল্যায়ন করে এবং তার চূড়ান্ত মান প্রদান করে। এই উদাহরণে, মানটি নির্ধারিত হয় ফাইল_কাউন্ট পরিবর্তনশীল। যতদূর ফাইল_কাউন্ট ভেরিয়েবল সম্পর্কিত, এটি ধরে রাখার জন্য একটি মূল্য পাস হয়েছে; মূল্য কীভাবে অর্জিত হয়েছিল তা নিয়ে উদ্বিগ্ন নয়।
  • কমান্ড প্রতিস্থাপনে মূল্যায়ন করা কমান্ড একটি সম্পাদন করে ls ডিরেক্টরিতে ফাইল তালিকা ফোল্ডার_ টু_কাউন্ট পরিবর্তনশীল, যা "/ dev" তে সেট করা হয়েছে। সুতরাং, স্ক্রিপ্টটি "ls / dev" কমান্ডটি কার্যকর করে।
  • এই কমান্ড থেকে আউটপুট পাইপ করা হয় ডাব্লুসিআদেশ দ্য -লি (লাইন গণনা) বিকল্প কারণডাব্লুসি থেকে আউটপুটে রেখার সংখ্যা গণনা করতেls আদেশ প্রতিটি ফাইল পৃথক লাইনে তালিকাভুক্ত হওয়ায় এটি "/ dev" ডিরেক্টরিতে থাকা ফাইল এবং উপ-ডিরেক্টরিগুলির গণনা। এই মান নির্ধারিত হয় ফাইল_কাউন্ট পরিবর্তনশীল।
  • ফলাফলটি আউটপুট করতে চূড়ান্ত লাইন প্রতিধ্বনি ব্যবহার করে।

তবে এটি কেবল "/ dev" ডিরেক্টরিতে কাজ করে। কীভাবে আমরা কোনও ডিরেক্টরি দিয়ে স্ক্রিপ্টটি কাজ করতে পারি? এটি যা লাগে তা হ'ল একটি ছোট পরিবর্তন।

স্ক্রিপ্টগুলিতে কমান্ড লাইন প্যারামিটারগুলি কীভাবে ব্যবহার করবেন

অনেক কমান্ড যেমন ls এবং ডাব্লুসি, কমান্ড লাইন পরামিতি নিন। এগুলি কমান্ডকে তথ্য সরবরাহ করে, তাই আপনি কী করতে চান তা এটি জানে। তুমি যদি চাওls আপনার হোম ডিরেক্টরিতে কাজ করতে এবং লুকানো ফাইলগুলি দেখানোর জন্য, আপনি নীচের কমান্ডটি ব্যবহার করতে পারেন, যেখানে টিল্ড ~ এবং -এ (সমস্ত) বিকল্প হ'ল কমান্ড লাইন পরামিতি:

ls ~ -a

আমাদের স্ক্রিপ্টগুলি কমান্ড লাইনের পরামিতিগুলি গ্রহণ করতে পারে। তারা হিসাবে উল্লেখ করা হয় $1 প্রথম প্যারামিটারের জন্য, $2 দ্বিতীয় হিসাবে, এবং তাই, পর্যন্ত $9 নবম প্যারামিটারের জন্য। (আসলে, একটি আছে $0, পাশাপাশি, তবে এটি সর্বদা স্ক্রিপ্টটি ধারণ করার জন্য সংরক্ষিত))

আপনি নিয়মিত ভেরিয়েবলগুলির মতো আপনি কোনও স্ক্রিপ্টে কমান্ড লাইন প্যারামিটারগুলি উল্লেখ করতে পারেন। নীচে প্রদর্শিত হিসাবে আমাদের স্ক্রিপ্টটি সংশোধন করা যাক এবং নতুন নামের সাথে এটি সংরক্ষণ করুনfcnt2.sh:

#! / বিন / ব্যাশ ফোল্ডার_ থেকে_কাউন্ট = file 1 ফাইল_কাউন্ট = $ (এলএস $ ফোল্ডার_টো_কাউন্ট | ডাব্লুসিএল-এল) প্রতিধ্বনি $ ফোল্ডার_টো_কাউন্টে ফাইল_কাউন্ট ফাইলগুলি

এবার, ফোল্ডার_ টু_কাউন্ট ভেরিয়েবলটি প্রথম কমান্ড লাইন প্যারামিটারের মান নির্ধারিত হয়, $1.

স্ক্রিপ্টের বাকি অংশগুলি ঠিক আগের মতো কাজ করে। নির্দিষ্ট সমাধানের পরিবর্তে আপনার স্ক্রিপ্ট এখন সাধারণ general আপনি যে কোনও ডিরেক্টরিতে এটি ব্যবহার করতে পারেন কারণ এটি কেবল "/ dev" দিয়ে কাজ করা হার্ডকোডযুক্ত নয়।

আপনি কীভাবে স্ক্রিপ্টটিকে সম্পাদনযোগ্য করে তুলবেন তা এখানে:

chmod + x fcnt2.sh

এখন কয়েকটি ডিরেক্টরি দিয়ে এটি ব্যবহার করে দেখুন। আপনি আগের মতো একই ফলাফল পেয়েছেন তা নিশ্চিত করতে আপনি প্রথমে "/ dev" করতে পারেন। নিম্নলিখিত টাইপ করুন:

./fnct2.sh / dev
./fnct2.sh / ইত্যাদি
./fnct2.sh / বিন

আপনি "/ dev" ডিরেক্টরিতে পূর্বের মত একই ফলাফল (207 ফাইল) পান। এটি উত্সাহজনক, এবং আপনি অন্যান্য কমান্ড লাইনের প্রতিটি পরামিতিগুলির জন্য ডিরেক্টরি-সংক্রান্ত ফলাফল পান।

স্ক্রিপ্টটি সংক্ষিপ্ত করতে আপনি ভেরিয়েবলটি দিয়ে দিতে পারেন,ফোল্ডার_ টু_কাউন্ট, পুরোপুরি, এবং কেবল রেফারেন্স $1 নীচে হিসাবে জুড়ে:

#! / বিন / ব্যাশ ফাইল_কাউন্ট = $ (ls $ 1 ডাব্লুসিএল) ইকো $ ফাইল_কাউন্ট ফাইলগুলি $ 1

বিশেষ ভেরিয়েবলের সাথে কাজ করা

আমরা উল্লেখ করেছি $0যা সর্বদা স্ক্রিপ্টের ফাইলনামে সেট করা থাকে। এটি আপনাকে পুনরায় নামকরণ করা হলেও এর নামটি সঠিকভাবে মুদ্রণের মতো কাজ করতে স্ক্রিপ্টটি ব্যবহার করতে দেয়। এটি লগিং পরিস্থিতিতে কার্যকর, যাতে আপনি যে প্রক্রিয়ায় একটি এন্ট্রি যুক্ত করেছে তার নাম জানতে চান।

নিম্নলিখিত অন্যান্য বিশেষ প্রসেট ভেরিয়েবলগুলি:

  • $#: স্ক্রিপ্টে কতটি কমান্ড লাইন প্যারামিটার পাস হয়েছিল।
  • $@: সমস্ত কমান্ড লাইন প্যারামিটার স্ক্রিপ্টে পাস করেছে।
  • $?: চালানো শেষ প্রক্রিয়াটির প্রস্থান স্থিতি।
  • $$: বর্তমান স্ক্রিপ্টের প্রক্রিয়া আইডি (পিআইডি)।
  • । ব্যবহারকারী: স্ক্রিপ্টটি সম্পাদনকারী ব্যবহারকারীর নাম।
  • O HOSTNAME: স্ক্রিপ্ট চলমান কম্পিউটারের হোস্টনাম।
  • CO দ্বিতীয়: স্ক্রিপ্টটি কত সেকেন্ডের জন্য চলছে।
  • ND র্যান্ডম: একটি এলোমেলো নম্বর প্রদান করে।
  • $ লিনেনো: স্ক্রিপ্টের বর্তমান লাইন নম্বর প্রদান করে।

আপনি তাদের সমস্তকে একটি স্ক্রিপ্টে দেখতে চান, তাই না? আপনি পারেন! ডাকা পাঠ্য ফাইল হিসাবে নিম্নলিখিতটি সংরক্ষণ করুন,special.sh:

#! / বিন / বাশ প্রতিধ্বনি "এখানে command # কমান্ড লাইন প্যারামিটার ছিল" প্রতিধ্বনি "তারা হলেন: $ @" প্রতিধ্বনি "পরামিতি 1: $ 1" প্রতিধ্বনি "স্ক্রিপ্টটি বলা হয়: $ 0" # কোনও পুরানো প্রক্রিয়া যাতে আমরা রিপোর্ট করতে পারি প্রস্থান স্থিতিতে পিডব্লিউডির প্রতিধ্বনি "পিডব্লিউডি ফিরে এসেছে"? " প্রতিধ্বনি "এই স্ক্রিপ্টটিতে প্রসেস আইডি রয়েছে e" প্রতিধ্বনি "স্ক্রিপ্টটি $ ব্যবহারকারী দ্বারা শুরু হয়েছিল" প্রতিধ্বনি "এটি $ HOSTNAME" স্লিপ 3 প্রতিধ্বনিতে চলছে "এটি $ SECONDS সেকেন্ড ধরে চলছে" প্রতিধ্বনি "র্যান্ডম সংখ্যা: ND র্যান্ডম" প্রতিধ্বনি "এটি স্ক্রিপ্টের লাইন নম্বর $ লিনেনো"

এটি কার্যকর করার জন্য নিম্নলিখিত টাইপ করুন:

chmod + x special.sh

এখন, আপনি এটি বিভিন্ন কমান্ড লাইনের পরামিতিগুলির গুচ্ছ সহ চালাতে পারেন, নীচের মত দেখানো হয়েছে।

পরিবেশ পরিবর্তনশীল

বাশ পরিবেশের পরিবর্তনশীলগুলি ব্যবহার করে যখন এটি চালু হয় তার পরিবেশের বৈশিষ্ট্যগুলি সংজ্ঞায়িত করতে এবং রেকর্ড করতে। এই হোল্ড তথ্যগুলি সহজেই অ্যাক্সেস করতে পারে যেমন আপনার ব্যবহারকারীর নাম, লোকেল, আপনার ইতিহাস ফাইলটি কমান্ডের সংখ্যা, আপনার ডিফল্ট সম্পাদক এবং আরও অনেক কিছু।

আপনার বাশ সেশনে সক্রিয় পরিবেশের পরিবর্তনগুলি দেখতে, এই আদেশটি ব্যবহার করুন:

env | কম

আপনি যদি তালিকাটির মাধ্যমে স্ক্রোল করেন তবে আপনি এমন কিছু সন্ধান করতে পারেন যা আপনার স্ক্রিপ্টগুলিতে উল্লেখ করার জন্য দরকারী।

চলকগুলি কীভাবে রফতানি করতে হয়

যখন কোনও স্ক্রিপ্ট চলে, তখন এটি তার নিজস্ব প্রক্রিয়াতে থাকে এবং এটি যে পরিবর্তনকগুলি ব্যবহার করে তা সেই প্রক্রিয়াটির বাইরে দেখা যায় না seen আপনার স্ক্রিপ্টটি আরম্ভ করে এমন অন্য স্ক্রিপ্টের সাথে যদি আপনি কোনও ভেরিয়েবল ভাগ করতে চান তবে আপনাকে সেই পরিবর্তনশীলটি রফতানি করতে হবে। দুটি স্ক্রিপ্ট দিয়ে কীভাবে এটি করব তা আমরা আপনাকে দেখাব।

প্রথমে ফাইলের নাম দিয়ে নিম্নলিখিতটি সংরক্ষণ করুনস্ক্রিপ্ট_অন.শ:

# !! $ প্রথম_ভার, দ্বিতীয়_ভার = $ সেকেন্ড_ভার "

এটি দুটি ভেরিয়েবল তৈরি করে, ফার্স্ট_ওয়ার এবং সেকেন্ড_ভার, এবং এটি কিছু মান নির্ধারণ করে। এটি টার্মিনাল উইন্ডোতে প্রিন্ট করে, ভেরিয়েবলগুলি এবং কলগুলি রফতানি করে স্ক্রিপ্ট_টুই.শ। কখন স্ক্রিপ্ট_টুই.শ বন্ধ হয়ে যায় এবং প্রক্রিয়া প্রবাহ এই স্ক্রিপ্টে ফিরে আসে, এটি আবার টার্মিনাল উইন্ডোতে ভেরিয়েবলগুলি মুদ্রণ করে। তারপরে, আপনি দেখতে পাচ্ছেন যে তারা পরিবর্তন হয়েছে কিনা।

দ্বিতীয় স্ক্রিপ্টটি আমরা ব্যবহার করব স্ক্রিপ্ট_টুই.শ। এই স্ক্রিপ্ট যেস্ক্রিপ্ট_অন.শকল। নিম্নলিখিত টাইপ করুন:

#! / বিন / বাশ # তাদের মানগুলি প্রতিধ্বনি পরীক্ষা করে "$ 0: প্রথম_ভার = $ প্রথম_ভার, সেকেন্ড_ভার = _ সেকেন্ড_ভার" # নতুন মান নির্ধারণ করুন প্রথম_ভার = চার্লি সেকেন্ড_ভার = ডেল্টা # তাদের মানগুলি আবার পরীক্ষা করুন "$ 0: প্রথম_ভার = $ প্রথম_ভার, দ্বিতীয়_ভার = $ সেকেন্ড_ভার "

এই দ্বিতীয় স্ক্রিপ্টটি দুটি ভেরিয়েবলের মান মুদ্রণ করে, তাদেরকে নতুন মান নির্ধারণ করে এবং তারপরে আবার মুদ্রণ করে।

এই স্ক্রিপ্টগুলি চালনার জন্য, এগুলি কার্যকর করার জন্য আপনাকে নিম্নলিখিত টাইপ করতে হবে:

chmod + xcript_one.sh chmod + xcript_two.sh

এবং এখন, চালু করতে নিম্নলিখিত টাইপ করুন স্ক্রিপ্ট_অন.শ:

./script_one.sh

আউটপুট আমাদের এই বলে:

  • স্ক্রিপ্ট_অন.শ ভেরিয়েবলের মান মুদ্রণ করে যা আলফা এবং ব্র্যাভো are
  • স্ক্রিপ্ট_টুই.শ ভেরিয়েবলের মান (আলফা এবং ব্র্যাভো) যেমনটি পেয়েছে তেমনি মুদ্রণ করে।
  • স্ক্রিপ্ট_টুই.শ তাদের চার্লি এবং ডেল্টায় পরিবর্তন করে
  • স্ক্রিপ্ট_অন.শ ভেরিয়েবলের মান মুদ্রণ করে, যা এখনও আলফা এবং ব্র্যাভো।

দ্বিতীয় স্ক্রিপ্টে যা ঘটে, দ্বিতীয় স্ক্রিপ্টে থাকে। এটি ভ্যারিয়েবলের অনুলিপিগুলির মতো দ্বিতীয় স্ক্রিপ্টে প্রেরণ করা হয় তবে স্ক্রিপ্টটি প্রস্থান করলে সেগুলি বাতিল করা হয়। প্রথম স্ক্রিপ্টের মূল ভেরিয়েবলগুলি সেটির অনুলিপিগুলিতে ঘটে এমন কোনও কিছু দ্বারা পরিবর্তিত হয় না।

কিভাবে ভেরিয়েবল উদ্ধৃতি

আপনি লক্ষ্য করেছেন যে যখন স্ক্রিপ্টগুলি রেফারেন্স ভেরিয়েবল হয়, তারা উদ্ধৃতি চিহ্নগুলিতে থাকে "। এটি ভেরিয়েবলগুলি সঠিকভাবে রেফারেন্স করতে দেয়, সুতরাং যখন স্ক্রিপ্টে লাইনটি কার্যকর করা হয় তখন তাদের মানগুলি ব্যবহৃত হয়।

আপনি যদি কোনও ভেরিয়েবলের জন্য নির্ধারিত মানের মধ্যে শূন্যস্থান অন্তর্ভুক্ত থাকে, আপনি যখন তাদেরকে ভেরিয়েবলটি বরাদ্দ করেন তখন এগুলি অবশ্যই উদ্ধৃতি চিহ্নের মধ্যে থাকতে হবে। এটি কারণ, ডিফল্টরূপে, ব্যাশ একটি সীমানা হিসাবে একটি স্থান ব্যবহার করে।

এখানে একটি উদাহরণ:

সাইট_নাম = গিওক কীভাবে

বাশ "গিক" এর আগে স্থানটিকে একটি নতুন কমান্ড শুরু হওয়ার ইঙ্গিত হিসাবে দেখছে। এটি রিপোর্ট করে যে এই জাতীয় কোনও আদেশ নেই এবং লাইনটি ত্যাগ করে। প্রতিধ্বনি আমাদের দেখায় যে সাইটের নাম ভেরিয়েবল কিছুই রাখে না - এমনকি "কীভাবে" টেক্সটও রাখে না।

নীচে দেখানো হিসাবে মানটির চারপাশে উদ্ধৃতি চিহ্নগুলি দিয়ে আবার চেষ্টা করুন:

সাইট_র নাম = "কীভাবে করতে হবে"

এবার এটি একক মান হিসাবে স্বীকৃত এবং সঠিকভাবে নির্ধারিত হয়েছে সাইটের নাম পরিবর্তনশীল।

প্রতিধ্বনি আপনার বন্ধু

প্রতিস্থাপনের আদেশ দিতে, ভেরিয়েবলগুলি উদ্ধৃত করতে এবং ডলারের চিহ্নটি কখন অন্তর্ভুক্ত করবেন তা মনে রাখতে কিছুটা সময় নিতে পারে।

আপনি এন্টার টিপুন এবং বাশ কমান্ডগুলির একটি লাইন কার্যকর করার আগে এটি দিয়ে চেষ্টা করুন প্রতিধ্বনি এটার সামনে. এইভাবে, আপনি যা যা ঘটতে চলেছে তা আপনি যা চান তা নিশ্চিত করতে পারেন। সিনট্যাক্সে আপনি যে কোনও ভুল করেছেন তাও ধরতে পারেন।


$config[zx-auto] not found$config[zx-overlay] not found