দ্য ওয়ার্ল্ড অফ লিনাক্স বিএসএইচ স্ক্রিপ্টিংয়ের মাধ্যমে বিক্রয় - অংশ তৃতীয়
নিম্নলিখিতটি "শেল স্ক্রিপ্টিং" সিরিজের পূর্ববর্তী নিবন্ধগুলি খুব প্রশংসা করেছিল এবং তাই আমি শেখার কখনও শেষ না হওয়া প্রক্রিয়াটি প্রসারিত করার জন্য এই নিবন্ধটি লিখছি।
- বুনিয়াদি লিনাক্স শেল স্ক্রিপ্টিং ভাষার টিপসটি বুঝুন - প্রথম অংশ
- শেল প্রোগ্রামিং শিখতে লিনাক্স নিউবিয়সের জন্য 5 শেল স্ক্রিপ্ট - দ্বিতীয় খণ্ড
একটি কীওয়ার্ড হ'ল একটি শব্দ বা প্রতীক যা কম্পিউটার ভাষার একটি বিশেষ অর্থ। নিম্নলিখিত চিহ্ন এবং শব্দের বাশের বিশেষ অর্থ রয়েছে যখন তারা অনর্থিত থাকে এবং কোনও আদেশের প্রথম শব্দ।
! esac select } case fi then [[ do for until ]] done function while elif if time else in {
বেশিরভাগ কম্পিউটারের ভাষা থেকে ভিন্ন, বাশ কীওয়ার্ডগুলিকে পরিবর্তনশীল নাম হিসাবে ব্যবহার করার অনুমতি দেয় যদিও এটি স্ক্রিপ্টগুলি পড়া কঠিন করে তুলতে পারে। স্ক্রিপ্টগুলি বোধগম্য রাখতে, কী-শব্দগুলি পরিবর্তনশীল নামের জন্য ব্যবহার করা উচিত নয়।
একটি কমান্ড শেলটিতে $(কমান্ড) হিসাবে প্রয়োগ করা হয়। আপনাকে কমান্ডের পুরো পথটি অন্তর্ভুক্ত করতে হতে পারে। যেমন সঠিক সম্পাদনের জন্য & # 36 (/ বিন/তারিখ)।
আপনি সম্ভবত "কমান্ড" কমান্ড ব্যবহার করে নির্দিষ্ট প্রোগ্রামের পথ জানেন। উদাঃ, যার তারিখ
whereis date date: /bin/date /usr/share/man/man1/date.1.gz
আপাতত যথেষ্ট। আমরা এখন এই তত্ত্ব সম্পর্কে খুব বেশি কথা বলব না। স্ক্রিপ্টে আসছে।
বর্তমান চলমান ডিরেক্টরি ডিরেক্টরি সরান
সঞ্চালনের সময় স্ক্রিপ্টের শেষে সংখ্যাসূচক মান প্রদান করে বর্তমান ওয়ার্কিং ডিরেক্টরি থেকে যে কোনও স্তরে সরিয়ে নিন।
#! /bin/bash LEVEL=$1 for ((i = 1; i <= LEVEL; i++)) do CDIR=../$CDIR done cd $CDIR echo "You are in: "$PWD exec /bin/bash
উপরের কোডগুলি আপনার ডেস্কটপে "up.sh" হিসাবে সংরক্ষণ করুন। এটি সম্পাদনযোগ্য করুন (chmod 755 up.sh)। চালান:
./up.sh 2 (বর্তমান কার্যনির্বাহী ডিরেক্টরিটিকে দুই স্তরের উপরে নিয়ে যাবে)
./up.sh 4 (বর্তমান কার্যনির্বাহী ডিরেক্টরিটি চার স্তরের উপরে সরানো হবে)।
বৃহত্তর স্ক্রিপ্টগুলিতে যা ফোল্ডারের অভ্যন্তরে ফোল্ডারটির ভিতরে ফোল্ডার থাকে ... বিভিন্ন লাইব্রেরি, বাইনারি, আইকন, এক্সিকিউটেবল ইত্যাদি থাকে, আপনি একজন বিকাশকারী হিসাবে খুব স্বয়ংক্রিয় ফ্যাশনে পছন্দসই স্থানে যেতে এই স্ক্রিপ্টটি প্রয়োগ করতে পারেন।
দ্রষ্টব্য: উপরের স্ক্রিপ্টের জন্য একটি লুপ এবং লুপের জন্য মানগুলি সত্য হওয়া অবধি এটি কার্যকর করা অব্যাহত থাকবে।
chmod 755 up ./up.sh 2 You are in: / ./up.sh 4 You are in: /
একটি র্যান্ডম ফাইল বা ফোল্ডার তৈরি করুন
সদৃশ সুযোগ না দিয়ে একটি এলোমেলো ফাইল (ফোল্ডার) তৈরি করুন।
#! /bin/bash echo "Hello $USER"; echo "$(uptime)" >> "$(date)".txt echo "Your File is being saved to $(pwd)"
এটি একটি সাধারণ স্ক্রিপ্ট তবে এটি কাজ করছে যে খুব সহজ নয়।
- ‘প্রতিধ্বনি’: উদ্ধৃতিগুলির মধ্যে লিখিত সমস্ত কিছু মুদ্রণ করে।
- ‘$’: একটি শেল পরিবর্তনশীল
- ‘>>‘: আউটপুটটি ডেক্স কমান্ডের আউটপুটটিতে পুনর্নির্দেশ করা হবে তারপরে txt এক্সটেনশান
আমরা জানি তারিখ কমান্ডের আউটপুটটি বছরের সাথে সময়, ঘন্টা এবং মিনিটে দ্বিতীয় হয় second অতএব আমরা ফাইলের নাম সদৃশ হওয়ার সুযোগ ছাড়াই একটি সংগঠিত ফাইলের নামে আউটপুট পেতে পারি। ভবিষ্যতের রেফারেন্সের জন্য যখন ব্যবহারকারীকে টাইম স্ট্যাম্প দিয়ে তৈরি ফাইলের প্রয়োজন হয় তখন এটি খুব কার্যকর হতে পারে।
./randomfile.sh Hello server Your File is being saved to /home/server/Desktop
আপনি আজকের তারিখ এবং বর্তমান সময়ের সাথে ডেস্কটপে তৈরি হওয়া ফাইলটি দেখতে পারেন।
nano Sat\ Jul\ 20\ 13\:51\:52\ IST\ 2013.txt 13:51:52 up 3:54, 1 user, load average: 0.09, 0.12, 0.08
উপরের স্ক্রিপ্টটির আরও বিশদ বাস্তবায়ন নীচে দেওয়া হয়েছে, যা উপরোক্ত নীতিতে কাজ করে এবং লিনাক্স সার্ভারের নেটওয়ার্ক তথ্য সংগ্রহের ক্ষেত্রে খুব কার্যকর।
নেটওয়ার্ক তথ্য সংগ্রহের স্ক্রিপ্ট
একটি লিনাক্স সার্ভারে নেটওয়ার্ক তথ্য সংগ্রহ করে। স্ক্রিপ্টটি অনেক বড় এবং এখানে স্ক্রিপ্টের পুরো কোড এবং আউটপুট পোস্ট করা সম্ভব নয়। সুতরাং, আপনি নীচের ডাউনলোড লিঙ্কটি ব্যবহার করে স্ক্রিপ্টটি ডাউনলোড করতে পারেন এবং এটি নিজেই পরীক্ষা করতে পারেন।
দ্রষ্টব্য: আপনার lsb- কোর প্যাকেজ এবং অন্যান্য প্রয়োজনীয় প্যাকেজ এবং নির্ভরতা ইনস্টল করার প্রয়োজন হতে পারে। প্রয়োজনীয় প্যাকেজগুলিকে অ্যাপ বা ইউম করুন। স্পষ্টতই স্ক্রিপ্টটি চালানোর জন্য আপনাকে রুট হওয়া দরকার কারণ এখানে ব্যবহৃত বেশিরভাগ কমান্ডগুলি রুট হিসাবে চালানোর জন্য কনফিগার করা হয়েছে।
./collectnetworkinfo.sh The Network Configuration Info Written To network.20-07-13.info.txt. Please email this file to [email _provider.com. ktop
উপরের ইমেল ঠিকানাটি আপনার স্ক্রিপ্টে এটি মেইল করার জন্য আপনি এটি পরিবর্তন করতে পারেন। স্বয়ংক্রিয়ভাবে উত্পন্ন ফাইলটি দেখা যায়।
স্ক্রিপ্ট থেকে আপেরসেসি কে ছোট হাতের কাছে রূপান্তর করে
একটি স্ক্রিপ্ট যা UPPERCASE কে ছোট হাতের সাথে রূপান্তর করে এবং আউটপুটটিকে একটি পাঠ্য ফাইল "ছোট.আর্ট টেক্সট" এ পুনর্নির্দেশ করে যা প্রয়োজনীয় হিসাবে সংশোধন করা যায়।
#!/bin/bash echo -n "Enter File Name : " read fileName if [ ! -f $fileName ]; then echo "Filename $fileName does not exists" exit 1 fi tr '[A-Z]' '[a-z]' < $fileName >> small.txt
এই উপরের স্ক্রিপ্টটি কোনও দৈর্ঘ্যের একটি ফাইলের বড় হাতের অক্ষর থেকে একক ক্লিকের সাথে ছোট হাতের সংক্ষিপ্তকরণের সাথে ছোট হাতের অক্ষরে এবং বিপরীত প্রয়োজনে রূপান্তর করতে পারে।
./convertlowercase.sh Enter File Name : a.txt Initial File: A B C D E F G H I J K ...
নতুন ফাইল (ছোট টেক্সট) আউটপুট:
a b c d e f g h i j k ...
সাধারণ ক্যালকুলেটর প্রোগ্রাম
#! /bin/bash clear sum=0 i="y" echo " Enter one no." read n1 echo "Enter second no." read n2 while [ $i = "y" ] do echo "1.Addition" echo "2.Subtraction" echo "3.Multiplication" echo "4.Division" echo "Enter your choice" read ch case $ch in 1)sum=`expr $n1 + $n2` echo "Sum ="$sum;; 2)sum=`expr $n1 - $n2` echo "Sub = "$sum;; 3)sum=`expr $n1 \* $n2` echo "Mul = "$sum;; 4)sum=`expr $n1 / $n2` echo "Div = "$sum;; *)echo "Invalid choice";; esac echo "Do u want to continue (y/n)) ?" read i if [ $i != "y" ] then exit fi done
./simplecalc.sh Enter one no. 12 Enter second no. 14 1.Addition 2.Subtraction 3.Multiplication 4.Division Enter your choice 1 Sum =26 Do u want to continue (y/n)) ? y 1.Addition 2.Subtraction 3.Multiplication 4.Division Enter your choice 3 mul = 14812 Do u want to continue (y/n)) ? n
আপনি কী দেখেছেন যে গণনার মতো একটি সহজ উপায় হিসাবে একটি শক্তিশালী প্রোগ্রাম তৈরি করা কতটা সহজ ছিল। এটি ’শেষ নয়। আমরা প্রশাসনের দৃষ্টিভঙ্গি থেকে বিস্তৃত দৃষ্টিকোণটি coveringেকে এই সিরিজের কমপক্ষে আরও একটি নিবন্ধ তৈরি করব।
এখন এ পর্যন্তই. পাঠক এবং সেরা সমালোচক হওয়ার কারণে এই নিবন্ধে আপনি কতটা এবং কী উপভোগ করেছেন এবং ভবিষ্যতের নিবন্ধে আপনি কী দেখতে চান তা আমাদের বলতে ভুলবেন না। যে কোনও প্রশ্ন মন্তব্যে অত্যন্ত স্বাগত। ততক্ষণ পর্যন্ত স্বাস্থ্যকর, সুরক্ষিত এবং সুরক্ষিত থাকুন। আমাদের লাইক এবং শেয়ার করুন এবং আমাদের ছড়িয়ে দিতে সহায়তা করুন।