హలో టెక్ ఔత్సాహికులారా! మీ/మన బ్లాగ్కి స్వాగతం.
బాష్ (Bash) స్క్రిప్టింగ్ అనేది మీ లినక్స్ (Linux) కంప్యూటర్ను ప్రోగ్రామ్ చేయడానికి, మరియు టాస్క్లను ఆటోమేట్ చేయడానికి అత్యంత ప్రజాదరణ పొందిన, సులభమైన మార్గాలలో ఒకటి. మీరు లినక్స్ ప్రపంచంలోకి అడుగుపెడుతున్నట్లయితే, ఈ సాధారణ స్క్రిప్ట్ ఉదాహరణలు మీకు ప్రోగ్రామింగ్ ప్రక్రియను అర్థం చేసుకోవడానికి సహాయపడతాయి మరియు బాష్ ప్రోగ్రామింగ్ యొక్క ప్రాథమికాలను మీకు పరిచయం చేస్తాయి.
మరి ఆలస్యం చేయకుండా ఆ 5 బాష్ స్క్రిప్ట్ ఉదాహరణలు ఏమిటో చూద్దాం!
1. బాష్లో 'హలో వరల్డ్' (Hello World) ను ఎలా ప్రింట్ చేయాలి?
ఏదైనా కొత్త ప్రోగ్రామింగ్ భాష గురించి నేర్చుకోవడం ప్రారంభించినప్పుడు 'హలో వరల్డ్' ఉదాహరణ ఒక గొప్ప మార్గం. బాష్ కూడా ఇందుకు మినహాయింపు కాదు.
మీ ఫేవరెట్ టెక్స్ట్ ఎడిటర్ను తెరిచి, కింది కోడ్తో hello_world.sh అనే కొత్త ఫైల్ను సృష్టించండి:
#!/bin/bash
# Print some text from a bash script
echo "Hello World"
ఇది ఎలా పనిచేస్తుంది?
#!/bin/bash(Shebang): మీ బాష్ స్క్రిప్ట్ల మొదటి పంక్తి ఎల్లప్పుడూ ఈ విధంగానే ఉండాలి. స్క్రిప్ట్ను ఎలా అమలు చేయాలో నిర్ణయించడానికి షెల్ దీనిని ఉపయోగిస్తుంది.#(Comments): ఈ గుర్తుతో మొదలయ్యే ఏ పంక్తి అయినా వ్యాఖ్య (comment) అవుతుంది. ఇది కేవలం కోడ్ను వివరించడానికి మాత్రమే.echo: ఈ కమాండ్ మీరు ఇచ్చిన టెక్స్ట్ను టెర్మినల్ అవుట్పుట్గా ప్రింట్ చేస్తుంది.
స్క్రిప్ట్ను ఎలా రన్ చేయాలి?
ముందుగా ఫైల్ను ఎగ్జిక్యూటబుల్గా మార్చడానికి chmod కమాండ్ వాడండి, ఆపై రన్ చేయండి:
chmod +x hello_world.sh
./hello_world.sh
వెంటనే మీ టెర్మినల్లో "Hello World" అని ప్రింట్ అవ్వడం మీరు గమనిస్తారు.
2. యూజర్ ఇన్పుట్ను చదవడం ద్వారా కొత్త డైరెక్టరీని (Directory) సృష్టించండి
మీ స్క్రిప్ట్ల నుండి, మీరు సాధారణంగా కమాండ్ లైన్లో వాడే ఏ ప్రోగ్రామ్నైనా నడపవచ్చు. ఉదాహరణకు, mkdir కమాండ్ను ఉపయోగించి మీ స్క్రిప్ట్ ద్వారానే ఒక కొత్త ఫోల్డర్ను సృష్టించవచ్చు.
కింది కోడ్ను గమనించండి:
#!/bin/bash
echo "Enter new directory name:"
read newdir
mkdir $newdir
ఇందులో కొత్తగా ఏముంది?
read: వినియోగదారు ఇన్పుట్ను (పేరును) తీసుకోవడానికి ఈ అంతర్నిర్మిత కమాండ్ ఉపయోగపడుతుంది. ఇది ఆ పేరునుnewdirఅనే వేరియబుల్లో నిల్వ చేస్తుంది.వేరియబుల్లో నిల్వ ఉన్న విలువను పిలవడానికి దాని పేరుకు ముందు డాలర్ గుర్తును (
$) చేర్చాలి. అందుకేmkdir $newdirఅని వాడాము.మీరు ఈ స్క్రిప్ట్ను రన్ చేసి ఒక పేరు ఇస్తే, ఆ పేరుతో ఒక కొత్త డైరెక్టరీ క్రియేట్ అవుతుంది.
3. కమాండ్ లైన్ ఆర్గ్యుమెంట్లను ఉపయోగించి డైరెక్టరీని సృష్టించండి
ప్రతిసారీ యూజర్ను అడగకుండా, స్క్రిప్ట్ రన్ చేసేటప్పుడే ఆర్గ్యుమెంట్గా పేరును ఇవ్వవచ్చు. మీ స్క్రిప్ట్లో, మొదటి ఆర్గ్యుమెంట్ను సూచించడానికి $1ని, రెండవ దానికి $2ని ఉపయోగిస్తారు.
అయితే, యూజర్ ఆర్గ్యుమెంట్ ఇవ్వడం మర్చిపోతే ఎర్రర్ రాకుండా ఉండటానికి if స్టేట్మెంట్ వాడి ఇలా స్క్రిప్ట్ రాయవచ్చు:
#!/bin/bash
if [ "$1" = "" ]; then
echo "Please provide a new directory name as the first argument"
exit
fi
mkdir $1
ఎలా రన్ చేయాలి?
./arg_dir.sh Test(ఇది "Test" అనే ఫోల్డర్ క్రియేట్ చేస్తుంది)ఒకవేళ కేవలం
./arg_dir.shఅని ఇస్తే, ఆర్గ్యుమెంట్ లేదు కాబట్టి, మీకు మన స్క్రిప్ట్ ఇచ్చిన వార్నింగ్ మెసేజ్ కనిపిస్తుంది. బాష్లోifకండిషన్ను క్లోజ్ చేయడానికి రివర్స్లోfiవాడతామని గుర్తుంచుకోండి.
4. బాష్ ఫంక్షన్ను (Function) ఉపయోగించి ఫైల్ను తొలగించండి
మీరు ఒకే కోడ్ను పదేపదే ఉపయోగిస్తున్నట్లయితే, దానిని ఒక ఫంక్షన్లో పెట్టుకోవడం బెస్ట్ ప్రాక్టీస్. ఫైల్ను తొలగించే ఒక సింపుల్ ఫంక్షన్ ఎలా రాయాలో చూద్దాం:
#!/bin/bash
del_file() {
echo "deleting $1"
rm $1
}
del_file test.txt
if [ $? -ne 0 ]; then
echo "Sorry, could not delete the file"
fi
ఈ కోడ్ వివరణ:
ఫంక్షన్ను నిర్వచించడానికి పేరు ఇచ్చి
()మరియు{ }బ్రాకెట్లలో కమాండ్స్ రాయాలి.$?(Exit Status): మీరు ఒక కమాండ్ వాడిన తర్వాత అది సక్సెస్ అయిందా లేదా అని తెలుసుకోవడానికి ఈ ఎగ్జిట్ స్టేటస్ ఉపయోగపడుతుంది.rmకమాండ్ ఫెయిల్ అయితే ఇది ఎర్రర్ మెసేజ్ ఇస్తుంది.
5. అంకగణిత గణనల కోసం ప్రాథమిక కాలిక్యులేటర్ (Calculator)
చివరి ఉదాహరణగా, ఒక బేసిక్ కాలిక్యులేటర్ని బాష్లో ఎలా రాయాలో చూద్దాం. దీనికి calc.sh అని పేరు పెట్టుకోండి:
#!/bin/bash
# Take operands as input
echo "Enter first number: "
read a
echo "Enter second number: "
read b
# Input type of operation
echo "Enter Arithmetic Operation Choice :"
echo "1. Addition"
echo "2. Subtraction"
echo "3. Multiplication"
echo "4. Division"
read choice
# calculator operations
case $choice in
1) result=$(echo "$a + $b" | bc) ;;
2) result=$(echo "$a - $b" | bc) ;;
3) result=$(echo "$a * $b" | bc) ;;
4) result=$(echo "scale=2; $a / $b" | bc) ;;
esac
echo "Result: $result"
ముఖ్యమైన పాయింట్స్:
case ... esac: ఇతర భాషలలోని స్విచ్ (Switch) స్టేట్మెంట్కు బాష్లో సమానమైనది ఇది. యూజర్ ఇచ్చిన ఛాయిస్ (1,2,3 లేదా 4) ని బట్టి ఇది ఆ ఆపరేషన్ను రన్ చేస్తుంది.bc(Basic Calculator): బాష్లో అంకగణిత (గణిత) ఆపరేషన్లను సమర్థవంతంగా చేయడానికి ఈ కమాండ్ ఉపయోగపడుతుంది.
చూశారుగా! లైనక్స్ బాష్ స్క్రిప్టింగ్ ఎంత సులభమో. ఈ 5 ఉదాహరణలు మీకు బాష్ ప్రోగ్రామింగ్ మీద ఒక అవగాహన తెచ్చాయని ఆశిస్తున్నాను. వీటిని మీ స్వంత లినక్స్ మెషిన్ లో ప్రాక్టీస్ చేయండి.
ఈ బ్లాగ్ పోస్ట్ మీకు హెల్ప్ అయ్యిందా? మీ అభిప్రాయాలను, లేదా మీకు ఇంకేమైనా సందేహాలు ఉంటే కింద కామెంట్స్ లో పంచుకోండి! Happy Coding! 💻🐧
No comments:
Post a Comment