{"id":77,"date":"2025-02-19T08:20:16","date_gmt":"2025-02-19T08:20:16","guid":{"rendered":"https:\/\/mitalgoswami.in\/?page_id=77"},"modified":"2025-02-19T08:24:21","modified_gmt":"2025-02-19T08:24:21","slug":"linux-script","status":"publish","type":"page","link":"https:\/\/mitalgoswami.in\/?page_id=77","title":{"rendered":"Linux script"},"content":{"rendered":"\n<p class=\"wp-block-paragraph\">variables type<br>1)shell<br>2)system\/environment<br>3) userdefine variable<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Arithmetic calculation<br>Arithmetic Expansion ($((\u2026)))<br>Using expr Command<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Using let Command<\/h2>\n\n\n\n<h1 class=\"wp-block-heading\"><strong>!\/bin\/bash<\/strong><\/h1>\n\n\n\n<p class=\"wp-block-paragraph\">echo &#8220;File Name: $0&#8221;<br>echo &#8220;First Parameter : $1&#8221;<br>echo &#8220;Second Parameter : $2&#8221;<br>echo &#8220;Quoted Values: $@&#8221;<br>echo &#8220;Quoted Values: $*&#8221;<br>echo &#8220;Total Number of Parameters : $#&#8221;<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h1 class=\"wp-block-heading\">!\/bin\/sh<\/h1>\n\n\n\n<p class=\"wp-block-paragraph\">for TOKEN in $*<br>do<br>echo $TOKEN<br>done<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">echo $1<\/h2>\n\n\n\n<h1 class=\"wp-block-heading\">!\/bin\/bash<\/h1>\n\n\n\n<p class=\"wp-block-paragraph\">echo &#8220;Enter first number&#8221;<br>read x<br>echo &#8220;Enter second number&#8221;<br>read y<br>sum=$(( $x + $y ))<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">echo &#8220;The result of addition=$sum&#8221;<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">-eq Equality check<br>-ne Inequality check<br>-lt Less Than<br>-le Less Than or Equal<br>-gt Greater Than<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">-ge Greater Than or Equal<\/h2>\n\n\n\n<h1 class=\"wp-block-heading\">!\/bin\/sh<\/h1>\n\n\n\n<p class=\"wp-block-paragraph\">a=10<br>b=20<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">if [ $a == $b ]<br>then<br>echo &#8220;a is equal to b&#8221;<br>else<br>echo &#8220;a is not equal to b&#8221;<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">fi<\/h2>\n\n\n\n<h1 class=\"wp-block-heading\">!\/bin\/bash<\/h1>\n\n\n\n<p class=\"wp-block-paragraph\">echo &#8220;enter no&#8221;<br>read n<br>if [ $((n%2))==0 ]<br>then<br>echo &#8220;The number is even.&#8221;<br>else<br>echo &#8220;The number is odd.&#8221;<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">fi<\/h2>\n\n\n\n<h1 class=\"wp-block-heading\">!\/bin\/bash<\/h1>\n\n\n\n<p class=\"wp-block-paragraph\">if [ <code>expr $a % 2<\/code> == 0 -a $a -gt 10 ]<br>then<br>echo &#8220;$a is even and greater than 10.&#8221;<br>else<br>echo &#8220;$a failed the test.&#8221;<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">fi<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">case EXPRESSION in<br>Pattern_Case_1)<br>STATEMENTS<br>;;<br>Pattern_Case_1)<br>STATEMENTS<br>;;<br>Pattern_Case_N)<br>STATEMENTS<br>;;<br>*)<br>STATEMENTS<br>;;<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">esac<\/h2>\n\n\n\n<h2 class=\"wp-block-heading\">filename:aa.sh<\/h2>\n\n\n\n<h1 class=\"wp-block-heading\">!\/bin\/bash<\/h1>\n\n\n\n<p class=\"wp-block-paragraph\">echo &#8220;enter your choice&#8221;<br>read mycase<br>case $mycase in<br>1) echo &#8220;You selected unix&#8221;;;<br>2) echo &#8220;You selected php&#8221;;;<br>3) echo &#8220;You selected java&#8221;;;<br>4) echo &#8220;You selected c++&#8221;;;<br>5) exit<br>esac<\/p>\n\n\n\n<h1 class=\"wp-block-heading\">Save the script and make it executable.<\/h1>\n\n\n\n<p class=\"wp-block-paragraph\">$chmod +x aa.sh<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">$.\/aa.sh<\/h2>\n\n\n\n<h1 class=\"wp-block-heading\">!\/bin\/bash<\/h1>\n\n\n\n<p class=\"wp-block-paragraph\">echo &#8220;enter vowel&#8221;<br>read mycase<br>case $mycase in<br>&#8216;a&#8217;) echo &#8220;vowel&#8221;;;<br>&#8216;e&#8217;) echo &#8220;vowel&#8221;;;<br>&#8216;i&#8217;) echo &#8220;vowel&#8221;;;<br>&#8216;o&#8217;) echo &#8220;vowel&#8221;;;<br>&#8216;u&#8217;) echo &#8220;vowel&#8221;;;<br>*) echo &#8220;consonent&#8221; ;;<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">esac<\/h2>\n\n\n\n<h1 class=\"wp-block-heading\">!\/bin\/bash<\/h1>\n\n\n\n<p class=\"wp-block-paragraph\">echo -n &#8220;Are you a student? [yes or no]: &#8220;<br>read response<br>case $response in<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>    \"Y\" | \"y\" | \"YES\" | \"Yes\" | \"yes\")\n            echo -n \"Yes, I am a student.\"\n            ;;\n\n    \"N\" | \"n\" | \"No\" | \"NO\" | \"no\" | \"nO\")\n            echo -n \"No, I am not a student.\";\n\n            ;;\n    *) echo -n \"Invalid input\"\n        ;;<\/code><\/pre>\n\n\n\n<h2 class=\"wp-block-heading\">esac<\/h2>\n\n\n\n<h1 class=\"wp-block-heading\">!\/bin\/bash<\/h1>\n\n\n\n<p class=\"wp-block-paragraph\">echo &#8220;Enter your lucky number&#8221;<br>read n<br>case $n in<br>101)<br>echo echo &#8220;You got 1stprize&#8221; ;;<br>510)<br>echo &#8220;You got 2nd prize&#8221; ;;<br>999)<br>echo &#8220;You got 3rd prize&#8221; ;;<br>*)<br>echo &#8220;Sorry,tryfor the next time&#8221; ;;<br>esac<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h1 class=\"wp-block-heading\">!\/bin\/bash<\/h1>\n\n\n\n<p class=\"wp-block-paragraph\">for i in {1..5}<br>do<br>sleep $i &amp;<br>done<br>echo &#8220;Background processes started\u2026&#8221;<br>wait<br>echo &#8220;All processes have completed!&#8221;<br>~<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<p class=\"wp-block-paragraph\">test 5 -gt 2 &amp;&amp; echo &#8220;Yes&#8221;<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">test 1 -lt 2 &amp;&amp; echo &#8220;Yes&#8221;<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">for var in word1 word2 \u2026 wordN<br>do<br>Statement(s) to be executed for every word.<br>done<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">The C-style Bash for loop<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">for (( initializer; condition; step ))<br>do<br>shell_COMMANDS<br>done<\/p>\n\n\n\n<h1 class=\"wp-block-heading\">\/bin\/bash<\/h1>\n\n\n\n<p class=\"wp-block-paragraph\">until<br>do<br><br><br><br>done<\/p>\n\n\n\n<h1 class=\"wp-block-heading\">\/bin\/bash<\/h1>\n\n\n\n<p class=\"wp-block-paragraph\">while<br>do<br><br><br><\/p>\n\n\n\n<h2 class=\"wp-block-heading\">done<\/h2>\n\n\n\n<h1 class=\"wp-block-heading\">display all the files starting with .bash and available in your home<\/h1>\n\n\n\n<h1 class=\"wp-block-heading\">!\/bin\/sh<\/h1>\n\n\n\n<p class=\"wp-block-paragraph\">for FILE in $HOME\/.bash*<br>do<br>echo $FILE<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">done<\/h2>\n\n\n\n<h1 class=\"wp-block-heading\">!\/bin\/sh<\/h1>\n\n\n\n<p class=\"wp-block-paragraph\">for var in 0 1 2 3 4 5 6 7 8 9<br>do<br>echo $var<br>done<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h1 class=\"wp-block-heading\">!\/bin\/bash<\/h1>\n\n\n\n<p class=\"wp-block-paragraph\">for (( i=1 ; i&lt;=5 ; i++ ))<br>do<br>for (( j=1 ; j&lt;=i ; j++ ))<br>do<br>echo -n &#8220;*&#8221;<br>done<br>echo &#8221; &#8220;<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">done<\/h2>\n\n\n\n<h1 class=\"wp-block-heading\">!\/bin\/bash<\/h1>\n\n\n\n<p class=\"wp-block-paragraph\">for (( i=1 ; i&lt;=5 ; i++ ))<br>do<br>for (( j=1 ; j&lt;=i ; j++ ))<br>do<br>echo -n &#8220;$i&#8221;<br>done<br>echo &#8221; &#8220;<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">done<\/h2>\n\n\n\n<h1 class=\"wp-block-heading\">!\/bin\/bash<\/h1>\n\n\n\n<p class=\"wp-block-paragraph\">for i in {1..5}<br>do<br>echo &#8220;Welcome $i times&#8221;<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">done<\/h2>\n\n\n\n<h1 class=\"wp-block-heading\">!\/bin\/bash<\/h1>\n\n\n\n<p class=\"wp-block-paragraph\">echo &#8220;Bash version ${BASH_VERSION}\u2026&#8221;<br>for i in {0..10..2} #{START..END..INCREMENT}<br>do<br>echo &#8220;Welcome $i times&#8221;<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">done<\/h2>\n\n\n\n<h1 class=\"wp-block-heading\">Write a shell script that calculates the sum of integers from 1 to N using a loop.<\/h1>\n\n\n\n<h1 class=\"wp-block-heading\">!\/bin\/bash<\/h1>\n\n\n\n<p class=\"wp-block-paragraph\">echo &#8220;Enter a number (N):&#8221;<br>read N<br>sum=0<br>for (( i=1; i&lt;=$N; i++ )); do<br>sum=$((sum + i))<br>done<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">echo &#8220;Sum of integers from 1 to $N is: $sum&#8221;<\/h2>\n\n\n\n<h1 class=\"wp-block-heading\">Create a script that searches for a specific word in a file and counts its occurrences.<\/h1>\n\n\n\n<h1 class=\"wp-block-heading\">!\/bin\/bash<\/h1>\n\n\n\n<p class=\"wp-block-paragraph\">echo &#8220;Enter the word to search for:&#8221;<br>read target_word<br>echo &#8220;Enter the filename:&#8221;<br>read filename<br>count=$(grep -o -w &#8220;$target_word&#8221; &#8220;$filename&#8221; | wc -l)<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">echo &#8220;The word &#8216;$target_word&#8217; appears $count times in &#8216;$filename&#8217;.&#8221;<\/h2>\n\n\n\n<h1 class=\"wp-block-heading\">Create a script that checks for and removes duplicate lines in a text file.<\/h1>\n\n\n\n<h1 class=\"wp-block-heading\">!\/bin\/bash<\/h1>\n\n\n\n<p class=\"wp-block-paragraph\">input_file=&#8221;in.txt&#8221;<br>output_file=&#8221;output.txt&#8221;<br>sort &#8220;$input_file&#8221; | uniq &gt; &#8220;$output_file&#8221;<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">echo &#8220;Duplicate lines removed successfully.&#8221;<\/h2>\n\n\n\n<h1 class=\"wp-block-heading\">Write a script that generates a secure random password.<\/h1>\n\n\n\n<h1 class=\"wp-block-heading\">!\/bin\/bash<\/h1>\n\n\n\n<h1 class=\"wp-block-heading\">Function to generate a random password<\/h1>\n\n\n\n<p class=\"wp-block-paragraph\">generate_password()<br>{<br>tr -dc &#8216;A-Za-z0-9!@#$%^&amp;*()_+{}[]&#8217; &lt; \/dev\/urandom | fold -w 12 | head -n 1<br>}<\/p>\n\n\n\n<h1 class=\"wp-block-heading\">Call the function and store the generated password<\/h1>\n\n\n\n<p class=\"wp-block-paragraph\">password=$(generate_password)<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">echo &#8220;Generated password: $password&#8221;<\/h2>\n\n\n\n<h1 class=\"wp-block-heading\">Create a shell script that finds and lists all empty files in a directory.<\/h1>\n\n\n\n<h1 class=\"wp-block-heading\">!\/bin\/bash<\/h1>\n\n\n\n<p class=\"wp-block-paragraph\">directory=&#8221;$1&#8243;<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">if [ -z &#8220;$directory&#8221; ]; then<br>echo &#8220;Usage: $0 &#8220;<br>exit 1<br>fi<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">if [ ! -d &#8220;$directory&#8221; ]; then<br>echo &#8220;Error: &#8216;$directory&#8217; is not a valid directory.&#8221;<br>exit 1<br>fi<br>echo &#8220;Empty files in $directory:&#8221;<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">find &#8220;$directory&#8221; -type f -empty<\/h2>\n\n\n\n<h1 class=\"wp-block-heading\">Create a script that checks if a network host is reachable.<\/h1>\n\n\n\n<h1 class=\"wp-block-heading\">!\/bin\/bash<\/h1>\n\n\n\n<p class=\"wp-block-paragraph\">host=&#8221;$1&#8243;<br>if [ -z &#8220;$host&#8221; ]; then<br>echo &#8220;Usage: $0 &#8220;<br>exit 1<br>fi<br>ping -c 4 &#8220;$host&#8221;<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">if [ $? -eq 0 ]; then<br>echo &#8220;$host is reachable.&#8221;<br>else<br>echo &#8220;$host is not reachable.&#8221;<br>fi<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h1 class=\"wp-block-heading\">\/bin\/bash<\/h1>\n\n\n\n<p class=\"wp-block-paragraph\">a=0<\/p>\n\n\n\n<h1 class=\"wp-block-heading\">-gt is greater than operator<\/h1>\n\n\n\n<h1 class=\"wp-block-heading\">Iterate the loop until a is greater than 10<\/h1>\n\n\n\n<p class=\"wp-block-paragraph\">until [ $a -gt 10 ]<br>do<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code># Print the values\necho $a\n\n\n# increment the value\na=`expr $a + 1`<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">done<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<p class=\"wp-block-paragraph\">\/\/was multiplication table<\/p>\n\n\n\n<h1 class=\"wp-block-heading\">!\/bin\/bash<\/h1>\n\n\n\n<p class=\"wp-block-paragraph\">echo &#8220;Enter a Number&#8221;<br>read n<br>i=1<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">while [ $i -le 10 ]<br>do<br>echo &#8221; $n x $i = $(( n * i ))&#8221;<br>i=$(( i + 1 ))<br>done<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h1 class=\"wp-block-heading\">!\/bin\/bash<\/h1>\n\n\n\n<p class=\"wp-block-paragraph\">rows=5<br>for((i=rows; i&gt;=1; i&#8211;))<br>do<br>for((j=1; j&lt;=i; j++))<br>do<br>echo -n &#8220;* &#8220;<br>done<br>echo<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">done<\/h2>\n\n\n\n<h1 class=\"wp-block-heading\">!\/bin\/bash<\/h1>\n\n\n\n<p class=\"wp-block-paragraph\">clear<br>p=$1<br>r=$2<br>n=$3<br>let int=<code>expr $p \\* $r \\* $n<\/code><br>int=<code>expr $int \/ 100<\/code><\/p>\n\n\n\n<h2 class=\"wp-block-heading\">echo &#8220;simple interest , $int&#8221;<\/h2>\n\n\n\n<h1 class=\"wp-block-heading\">!\/bin\/bash<\/h1>\n\n\n\n<p class=\"wp-block-paragraph\">echo &#8220;enter the year&#8221;<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">read a<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">year= $a<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">a=$(( $a %4 ))<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">if [ $a -eq 0 ];<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">then<br>echo &#8220;$year is leap&#8221;<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">else<br>echo &#8220;$year is not a leap year&#8221;<\/p>\n\n\n\n<h1 class=\"wp-block-heading\">fi<\/h1>\n\n\n\n<h1 class=\"wp-block-heading\">!\/bin\/bash<\/h1>\n\n\n\n<p class=\"wp-block-paragraph\">echo &#8220;Enter any number&#8221;<br>read n<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">if [[ ( $n -eq 15 || $n -eq 45 ) ]]<br>then<br>echo &#8220;You won the game&#8221;<br>else<br>echo &#8220;You lost the game&#8221;<\/p>\n\n\n\n<h1 class=\"wp-block-heading\">fi<\/h1>\n\n\n\n<h1 class=\"wp-block-heading\">!\/bin\/bash<\/h1>\n\n\n\n<p class=\"wp-block-paragraph\">echo &#8220;Enter your lucky number&#8221;<br>read n<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">if [ $n -eq 101 ];<br>then<br>echo &#8220;You got 1st prize&#8221;<br>elif [ $n -eq 510 ];<br>then<br>echo &#8220;You got 2nd prize&#8221;<br>elif [ $n -eq 999 ];<br>then<br>echo &#8220;You got 3rd prize&#8221;<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">else<br>echo &#8220;Sorry, try for the next time&#8221;<br>fi<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">========================================<\/p>\n\n\n\n<h1 class=\"wp-block-heading\">!\/bin\/bash<\/h1>\n\n\n\n<p class=\"wp-block-paragraph\">echo &#8220;enter file name&#8221;<br>read fname<br>if [ -f $fname ]; then<br>echo &#8220;$fname file exist&#8221;<br>else<br>echo &#8220;sorry, $fname file does not exist&#8221;<\/p>\n\n\n\n<h1 class=\"wp-block-heading\">fi<\/h1>\n\n\n\n<h1 class=\"wp-block-heading\">!\/bin\/bash<\/h1>\n\n\n\n<p class=\"wp-block-paragraph\">function F1()<br>{<br>echo &#8216;I like bash programming&#8217;<br>}<\/p>\n\n\n\n<h1 class=\"wp-block-heading\">F1<\/h1>\n\n\n\n<h1 class=\"wp-block-heading\">!\/bin\/bash<\/h1>\n\n\n\n<p class=\"wp-block-paragraph\">echo &#8220;Enter directory name&#8221;<br>read ndir<br>if [ -d &#8220;$ndir&#8221; ]<br>then<br>echo &#8220;Directory exist&#8221;<br>else<br><code>mkdir $ndir<\/code><br>echo &#8220;Directory created&#8221;<\/p>\n\n\n\n<h1 class=\"wp-block-heading\">fi<\/h1>\n\n\n\n<p class=\"wp-block-paragraph\">Creating Functions<br>function_name ()<br>{<br>list of commands<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">}<\/h2>\n\n\n\n<h1 class=\"wp-block-heading\">!\/bin\/sh<\/h1>\n\n\n\n<h1 class=\"wp-block-heading\">Define your function here<\/h1>\n\n\n\n<p class=\"wp-block-paragraph\">Hello ()<br>{<br>echo &#8220;Hello World&#8221;<br>}<\/p>\n\n\n\n<h1 class=\"wp-block-heading\">Invoke your function<\/h1>\n\n\n\n<p class=\"wp-block-paragraph\">Hello<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h1 class=\"wp-block-heading\">!\/bin\/sh<\/h1>\n\n\n\n<h1 class=\"wp-block-heading\">Define your function here<\/h1>\n\n\n\n<p class=\"wp-block-paragraph\">Hello ()<br>{<br>echo &#8220;Hello World $1 $2&#8221;<br>}<\/p>\n\n\n\n<h1 class=\"wp-block-heading\">Invoke your function<\/h1>\n\n\n\n<p class=\"wp-block-paragraph\">Hello Zara Ali<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h1 class=\"wp-block-heading\">!\/bin\/sh<\/h1>\n\n\n\n<h1 class=\"wp-block-heading\">Define your function here<\/h1>\n\n\n\n<p class=\"wp-block-paragraph\">Hello () {<br>echo &#8220;Hello World $1 $2&#8221;<br>return 10<br>}<\/p>\n\n\n\n<h1 class=\"wp-block-heading\">Invoke your function<\/h1>\n\n\n\n<p class=\"wp-block-paragraph\">Hello Zara Ali<\/p>\n\n\n\n<h1 class=\"wp-block-heading\">Capture value returnd by last command<\/h1>\n\n\n\n<p class=\"wp-block-paragraph\">ret=$?<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">echo &#8220;Return value is $ret&#8221;<\/h2>\n\n\n\n<h1 class=\"wp-block-heading\">!\/bin\/sh<\/h1>\n\n\n\n<h1 class=\"wp-block-heading\">Calling one function from another<\/h1>\n\n\n\n<p class=\"wp-block-paragraph\">number_one ()<br>{<br>echo &#8220;This is the first function speaking\u2026&#8221;<br>number_two<br>}<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">number_two ()<br>{<br>echo &#8220;This is now the second function speaking\u2026&#8221;<br>}<\/p>\n\n\n\n<h1 class=\"wp-block-heading\">Calling function one.<\/h1>\n\n\n\n<h2 class=\"wp-block-heading\">number_one<\/h2>\n\n\n\n<h1 class=\"wp-block-heading\">!\/bin\/bash<\/h1>\n\n\n\n<p class=\"wp-block-paragraph\">echo -n &#8220;Enter Left-End: &#8220;<br>read le<br>echo -n &#8220;Enter Right-End: &#8220;<br>read ri<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">is_prime()<br>{<br>if [ $1 -lt 2 ]; then<br>return<br>fi<br>ctr=0<br>for((i=2;i&lt;$1;i++))<br>{<br>if [ $(( $1 % i )) -eq 0 ]; then<br>ctr=$(( ctr +1 ))<br>fi<br>}<br>if [ $ctr -eq 0 ]; then<br>printf &#8220;%d &#8221; &#8220;$1&#8221;<br>fi<br>}<br>printf &#8220;Prime Numbers between %d and %d are: &#8221; &#8220;$le&#8221; &#8220;$ri&#8221;<br>for((i=le;i&lt;=ri;i++))<br>{<br>is_prime $i<br>}<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">printf &#8220;\\n&#8221;<\/h2>\n\n\n\n<h1 class=\"wp-block-heading\">!\/bin\/bash<\/h1>\n\n\n\n<p class=\"wp-block-paragraph\">is_odd()<br>{<br>x=$1<br>if [ $((x%2)) == 0 ]; then<br>echo &#8220;Invalid Input&#8221;<br>exit 1<br>else<br>echo &#8220;Number is Odd&#8221;<br>fi<br>}<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">is_odd 64<\/h2>\n\n\n\n<h1 class=\"wp-block-heading\">!\/bin\/bash<\/h1>\n\n\n\n<p class=\"wp-block-paragraph\">add()<br>{<br>return $(($1+$2))<br>}<br>multiply()<br>{<br>return $(($1*$2))<br>}<\/p>\n\n\n\n<h1 class=\"wp-block-heading\">Call Addition for 3 and 4 == 7<\/h1>\n\n\n\n<p class=\"wp-block-paragraph\">add 3 4<\/p>\n\n\n\n<h1 class=\"wp-block-heading\">Call multiplication for 3 and 4 == 12<\/h1>\n\n\n\n<p class=\"wp-block-paragraph\">multiply 3 4<\/p>\n\n\n\n<h1 class=\"wp-block-heading\">Call Addition for 5 and 4 == 9<\/h1>\n\n\n\n<p class=\"wp-block-paragraph\">add 5 4<\/p>\n\n\n\n<h1 class=\"wp-block-heading\">Store answer (always stores final function call returned value)<\/h1>\n\n\n\n<p class=\"wp-block-paragraph\">ans=$?<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">echo &#8220;$ans&#8221;<\/h2>\n\n\n\n<h1 class=\"wp-block-heading\">!\/bin\/bash<\/h1>\n\n\n\n<h1 class=\"wp-block-heading\">Name &#8211; math.sh<\/h1>\n\n\n\n<h1 class=\"wp-block-heading\">Purpose &#8211; Demo return value<\/h1>\n\n\n\n<h1 class=\"wp-block-heading\">&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;<\/h1>\n\n\n\n<h2 class=\"wp-block-heading\">user define function<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">math()<br>{<br>local a=$1<br>local b=$2<br>local sum=$(( a + b))<br>return $sum<br>}<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">call the math function with 5 and 10 as arguments<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">math 5 10<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">display back result (returned value) using $?<\/h2>\n\n\n\n<h2 class=\"wp-block-heading\">echo &#8220;5 + 10 = $?&#8221;<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Test for empty arguments: Use the -z operator to check if an argument is empty<\/p>\n\n\n\n<h1 class=\"wp-block-heading\">!\/bin\/bash<\/h1>\n\n\n\n<p class=\"wp-block-paragraph\">function check_empty()<br>{<br>if [ -z &#8220;$1&#8221; ]; then<br>echo &#8220;Error: Argument is empty!&#8221;<br>return 1<br>fi<br>echo &#8220;Argument: $1&#8221;<br>}<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">check_empty &#8220;apple&#8221;<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">check_empty &#8220;&#8221;<\/h2>\n\n\n\n<h1 class=\"wp-block-heading\">The following is one such function used to calculate the average of the given numbers.<\/h1>\n\n\n\n<h1 class=\"wp-block-heading\">!\/bin\/bash<\/h1>\n\n\n\n<p class=\"wp-block-paragraph\">find_avg()<br>{<br>len=$#<br>sum=0<br>for x in &#8220;$@&#8221;<br>do<br>sum=$((sum + x))<br>done<br>avg=$((sum\/len))<br>return $avg<br>}<br>find_avg 30 40 50 60<br>printf &#8220;%f&#8221; &#8220;$?&#8221;<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">printf &#8220;\\n&#8221;<\/h2>\n\n\n\n<h1 class=\"wp-block-heading\">Below function creates a simple digital clock on terminal<\/h1>\n\n\n\n<h1 class=\"wp-block-heading\">T Displays the 24-hour clock (00-23) in the format equivalent to HH:MM:SS<\/h1>\n\n\n\n<h1 class=\"wp-block-heading\">!\/bin\/bash<\/h1>\n\n\n\n<p class=\"wp-block-paragraph\">function digital_clock<br>{<br>clear<br>while [ 1 ]<br>do<br>date +&#8217;%T&#8217;<br>sleep 1<br>clear<br>done<br>}<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">digital_clock<\/h2>\n\n\n\n<h2 class=\"wp-block-heading\">This is the second function<\/h2>\n\n\n\n<h1 class=\"wp-block-heading\">!\/bin\/bash<\/h1>\n\n\n\n<p class=\"wp-block-paragraph\">compare()<br>{<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">file1 = $1<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">file2 = $2<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">cmp $file1 $file2<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">if [ $file1 -eq $file2 ]<br>then<br>echo &#8220;comparison is possible&#8221;<br>else<br>echo &#8220;compariosn is not possible&#8221;<br>fi<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">}<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">which nano<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">undo -&gt; mu -&gt;alt-&gt;u<br>clear alt-&gt;t<br>copy ctrl+shift+c<br>paste ctrl+shift+v<\/p>\n","protected":false},"excerpt":{"rendered":"<p>variables type1)shell2)system\/environment3) userdefine variable Arithmetic calculationArithmetic Expansion ($((\u2026)))Using expr Command Using let Command !\/bin\/bash echo &#8220;File Name: $0&#8221;echo &#8220;First Parameter : $1&#8221;echo &#8220;Second Parameter : $2&#8221;echo &#8220;Quoted Values: $@&#8221;echo &#8220;Quoted Values: $*&#8221;echo &#8220;Total Number of Parameters : $#&#8221; !\/bin\/sh for TOKEN in $*doecho $TOKENdone echo $1 !\/bin\/bash echo &#8220;Enter first number&#8221;read xecho &#8220;Enter second number&#8221;read [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"footnotes":""},"class_list":["post-77","page","type-page","status-publish","hentry"],"aioseo_notices":[],"_hostinger_reach_plugin_has_subscription_block":false,"_hostinger_reach_plugin_is_elementor":false,"_links":{"self":[{"href":"https:\/\/mitalgoswami.in\/index.php?rest_route=\/wp\/v2\/pages\/77","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/mitalgoswami.in\/index.php?rest_route=\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/mitalgoswami.in\/index.php?rest_route=\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/mitalgoswami.in\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/mitalgoswami.in\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=77"}],"version-history":[{"count":3,"href":"https:\/\/mitalgoswami.in\/index.php?rest_route=\/wp\/v2\/pages\/77\/revisions"}],"predecessor-version":[{"id":81,"href":"https:\/\/mitalgoswami.in\/index.php?rest_route=\/wp\/v2\/pages\/77\/revisions\/81"}],"wp:attachment":[{"href":"https:\/\/mitalgoswami.in\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=77"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}