.## ১. Bash এর মৌলিক বিষয়
Bash শেল কী?
Bash (Bourne Again Shell) হল লিনাক্স ডিস্ট্রিবিউশনগুলিতে সর্বাধিক ব্যবহৃত কমান্ড-লাইন ইন্টারফেস। এই সহজ কিন্তু শক্তিশালী টুলটি ব্যবহারকারীদের সিস্টেমের সঙ্গে যোগাযোগের একটি প্ল্যাটফর্ম প্রদান করে, যা ফাইল ম্যানিপুলেশন, প্রোগ্রাম এক্সিকিউশন এবং কাজের ব্যবস্থাপনা ইত্যাদি মৌলিক কাজ সম্পাদন করতে সক্ষম করে।
Bash এর সুবিধাসমূহ
- শক্তিশালী স্ক্রিপ্টিং ক্ষমতা : Bash ব্যবহারকারীদের শেল স্ক্রিপ্টের মাধ্যমে জটিল কাজ স্বয়ংক্রিয় করতে সক্ষম করে।
- বিস্তৃত সমর্থন : এটি অধিকাংশ ইউনিক্স-ভিত্তিক অপারেটিং সিস্টেম এবং লিনাক্স ডিস্ট্রিবিউশনগুলিতে সমর্থিত।
- উচ্চ কাস্টমাইজেবিলিটি : এলিয়াস এবং শেল ফাংশনের মাধ্যমে ব্যবহারকারীরা তাদের পরিবেশকে তাদের কাজের প্রবাহের সঙ্গে মানিয়ে নিতে পারে।
# Simple Bash command example echo "Hello, World!"
২. অপরিহার্য Bash কমান্ডসমূহ
ফাইল অপারেশনসমূহ
নিচে Bash-এ সবচেয়ে বেশি ব্যবহৃত ফাইল অপারেশন কমান্ডগুলোর কিছু দেওয়া হল।
ls: ডিরেক্টরির বিষয়বস্তু তালিকাভুক্ত করে।cd: বর্তমান ডিরেক্টরি পরিবর্তন করে।cp: ফাইল বা ডিরেক্টরি কপি করে।mv: ফাইল সরিয়ে দেয় বা নাম পরিবর্তন করে।rm: ফাইল মুছে দেয়।# Display directory contents in detail ls -l # Move to the home directory cd ~ # Copy a file cp source.txt destination.txt # Move or rename a file mv old_name.txt new_name.txt # Delete a file rm unwanted_file.txt
সিস্টেম তথ্য এবং প্রক্রিয়া ব্যবস্থাপনা
সিস্টেম তথ্য যাচাই এবং প্রক্রিয়া পরিচালনার জন্য কমান্ডগুলোও অপরিহার্য।
ps: সক্রিয় প্রক্রিয়াগুলি প্রদর্শন করে।top: প্রক্রিয়ার রিয়েল-টাইম তালিকা এবং সিস্টেমের সামগ্রিক দৃশ্য দেখায়।kill: একটি প্রক্রিয়া শেষ করার জন্য সিগন্যাল পাঠায়।# Display active processes ps aux # Show system overview and process list top # Terminate a process with ID 1234 kill 1234
৩. Bash স্ক্রিপ্ট লেখা
মৌলিক স্ক্রিপ্ট কাঠামো
একটি Bash স্ক্রিপ্ট হল একাধিক কমান্ড সমন্বিত একটি ফাইল। স্ক্রিপ্ট তৈরি করে ব্যবহারকারীরা একটি সিরিজ অপারেশন স্বয়ংক্রিয় ও এক্সিকিউট করতে পারে।
#!/bin/bash
# This line is called a shebang and specifies the shell used to interpret the script.
echo "Hello, World!" # Display a string using the echo command
ভেরিয়েবল ব্যবহার
ভেরিয়েবল আপনাকে ডেটা সংরক্ষণ এবং স্ক্রিপ্টের মধ্যে পুনরায় ব্যবহার করার সুযোগ দেয়।
#!/bin/bash
message="Hello, Bash Scripting!"
echo $message
শর্তযুক্ত বিবৃতি এবং লুপ
শর্তযুক্ত বিবৃতি এবং লুপ ব্যবহার করে জটিল লজিক এবং পুনরাবৃত্ত কাজগুলি পরিচালনা করা যায়।
#!/bin/bash
# Example of an if statement
if [ $1 -gt 100 ]
then
echo "The number is greater than 100."
else
echo "The number is 100 or less."
fi
# Example of a for loop
for i in 1 2 3 4 5
do
echo "Looping ... number $i"
done
৪. Bash দিয়ে কাজের স্বয়ংক্রিয়তা
কাজের স্বয়ংক্রিয়তার সংক্ষিপ্ত বিবরণ
Bash স্ক্রিপ্টের মাধ্যমে পুনরাবৃত্ত কাজগুলোকে দক্ষতার সঙ্গে স্বয়ংক্রিয় করা সম্ভব। সিস্টেম ব্যাকআপ, ডেটা সিঙ্ক্রোনাইজেশন বা রিপোর্ট জেনারেশন যাই হোক না কেন, Bash সিস্টেম প্রশাসনের বোঝা কমিয়ে দেয়।
স্বয়ংক্রিয় ব্যাকআপ স্ক্রিপ্ট
নিচের স্ক্রিপ্টটি নির্দিষ্ট একটি ডিরেক্টরির নিয়মিত ব্যাকআপ করে দৈনিক ডেটা সুরক্ষার জন্য।
#!/bin/bash
SRC_DIR="/home/user/documents"
DST_DIR="/backup/documents"
DATE=$(date +%Y%m%d)
# Create backup directory if it does not exist
if [ ! -d "$DST_DIR" ]; then
mkdir -p "$DST_DIR"
fi
# Compress and back up directory contents
tar -czf "$DST_DIR/backup_$DATE.tar.gz" -C "$SRC_DIR" .
echo "Backup completed successfully."
cron দিয়ে স্ক্রিপ্ট স্বয়ংক্রিয়ভাবে চালানো
প্রতিদিন সকাল ২:০০ টায় ব্যাকআপ স্ক্রিপ্ট চালানোর জন্য cron ব্যবহার করুন।
0 2 * * * /path/to/backup.sh
ত্রুটি হ্যান্ডলিং এবং নোটিফিকেশন
এই স্ক্রিপ্টে ত্রুটি হ্যান্ডলিং অন্তর্ভুক্ত রয়েছে এবং ব্যাকআপ প্রক্রিয়ার সময় কোনো সমস্যা ঘটলে প্রশাসককে জানায়।
#!/bin/bash
SRC_DIR="/home/user/documents"
DST_DIR="/backup/documents"
LOG_FILE="/var/log/backup.log"
DATE=$(date +%Y%m%d)
if [ ! -d "$DST_DIR" ]; then
mkdir -p "$DST_DIR"
fi
if tar -czf "$DST_DIR/backup_$DATE.tar.gz" -C "$SRC_DIR" .; then
echo "Backup successful on $DATE" >> $LOG_FILE
else
echo "Backup failed on $DATE" | mail -s "Backup Failure" admin@example.com
fi

5. Troubleshooting and Common Errors
Understanding and Resolving Bash Errors
It is common for errors to occur when executing Bash scripts. Here are some frequent errors and how to resolve them.
Command Not Found Error
This occurs when the command you are trying to run is not installed or the path is not configured correctly.
command not found
- Solution : Ensure the command is installed and verify that the
$PATHenvironment variable is properly configured.
Permission Error
This error occurs when you lack the necessary permissions to access a file or directory.
Permission denied
- Solution : Run the command with a user who has the required permissions, or modify permissions using
chmodorchown.
Syntax Error
This error occurs when the script contains improperly formatted code.
syntax error: unexpected end of file
- Solution : Carefully review the script and correct any syntax issues.
File Not Found Error
This error occurs when a specified file does not exist.
No such file or directory
- Solution : Verify the path and ensure the file exists.
Using Debugging Tools
The set -x command is useful when debugging Bash scripts. It displays each step as the script executes, making it easier to identify the cause of an error.
set -x # Enable script debugging


