<?xml version="1.0"?>
<?xml-stylesheet type="text/css" href="https://script.spoken-tutorial.org/skins/common/feed.css?303"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
		<id>https://script.spoken-tutorial.org/index.php?action=history&amp;feed=atom&amp;title=BASH%2FC3%2FAdvance-topics-in-a-function%2FEnglish</id>
		<title>BASH/C3/Advance-topics-in-a-function/English - Revision history</title>
		<link rel="self" type="application/atom+xml" href="https://script.spoken-tutorial.org/index.php?action=history&amp;feed=atom&amp;title=BASH%2FC3%2FAdvance-topics-in-a-function%2FEnglish"/>
		<link rel="alternate" type="text/html" href="https://script.spoken-tutorial.org/index.php?title=BASH/C3/Advance-topics-in-a-function/English&amp;action=history"/>
		<updated>2026-04-17T15:10:16Z</updated>
		<subtitle>Revision history for this page on the wiki</subtitle>
		<generator>MediaWiki 1.23.17</generator>

	<entry>
		<id>https://script.spoken-tutorial.org/index.php?title=BASH/C3/Advance-topics-in-a-function/English&amp;diff=10265&amp;oldid=prev</id>
		<title>Nancyvarkey at 00:12, 8 May 2014</title>
		<link rel="alternate" type="text/html" href="https://script.spoken-tutorial.org/index.php?title=BASH/C3/Advance-topics-in-a-function/English&amp;diff=10265&amp;oldid=prev"/>
				<updated>2014-05-08T00:12:49Z</updated>
		
		<summary type="html">&lt;p&gt;&lt;/p&gt;
&lt;a href=&quot;https://script.spoken-tutorial.org/index.php?title=BASH/C3/Advance-topics-in-a-function/English&amp;amp;diff=10265&amp;amp;oldid=10258&quot;&gt;Show changes&lt;/a&gt;</summary>
		<author><name>Nancyvarkey</name></author>	</entry>

	<entry>
		<id>https://script.spoken-tutorial.org/index.php?title=BASH/C3/Advance-topics-in-a-function/English&amp;diff=10258&amp;oldid=prev</id>
		<title>Ashwini: Created page with ''''Title of script: Advance topics in function '''  '''Author:''' Lavitha Pereira  '''Keywords: Video tutorial, source command, background function'''   {| style=&quot;border-spacing:…'</title>
		<link rel="alternate" type="text/html" href="https://script.spoken-tutorial.org/index.php?title=BASH/C3/Advance-topics-in-a-function/English&amp;diff=10258&amp;oldid=prev"/>
				<updated>2014-05-07T10:52:14Z</updated>
		
		<summary type="html">&lt;p&gt;Created page with &amp;#039;&amp;#039;&amp;#039;&amp;#039;Title of script: Advance topics in function &amp;#039;&amp;#039;&amp;#039;  &amp;#039;&amp;#039;&amp;#039;Author:&amp;#039;&amp;#039;&amp;#039; Lavitha Pereira  &amp;#039;&amp;#039;&amp;#039;Keywords: Video tutorial, source command, background function&amp;#039;&amp;#039;&amp;#039;   {| style=&amp;quot;border-spacing:…&amp;#039;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;New page&lt;/b&gt;&lt;/p&gt;&lt;div&gt;'''Title of script: Advance topics in function '''&lt;br /&gt;
&lt;br /&gt;
'''Author:''' Lavitha Pereira&lt;br /&gt;
&lt;br /&gt;
'''Keywords: Video tutorial, source command, background function'''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{| style=&amp;quot;border-spacing:0;&amp;quot;&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000001;padding-top:0cm;padding-bottom:0cm;padding-left:0.191cm;padding-right:0.191cm;&amp;quot;| &amp;lt;center&amp;gt;'''Visual Cue'''&amp;lt;/center&amp;gt;&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000001;padding-top:0cm;padding-bottom:0cm;padding-left:0.191cm;padding-right:0.191cm;&amp;quot;| &amp;lt;center&amp;gt;'''Narration'''&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000001;padding-top:0cm;padding-bottom:0cm;padding-left:0.191cm;padding-right:0.191cm;&amp;quot;| Display Slide 1&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000001;padding-top:0cm;padding-bottom:0cm;padding-left:0.191cm;padding-right:0.191cm;&amp;quot;| Dear friends, &lt;br /&gt;
&lt;br /&gt;
Welcome to the spoken tutorial on''' Advance topics in function '''&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000001;padding-top:0cm;padding-bottom:0cm;padding-left:0.191cm;padding-right:0.191cm;&amp;quot;| Display Slide 2&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000001;padding-top:0cm;padding-bottom:0cm;padding-left:0.191cm;padding-right:0.191cm;&amp;quot;| In this tutorial, we will learn&lt;br /&gt;
&lt;br /&gt;
* '''Source '''command&lt;br /&gt;
* how to put a function in the '''background'''&lt;br /&gt;
* with the help of some examples. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000001;padding-top:0cm;padding-bottom:0cm;padding-left:0.191cm;padding-right:0.191cm;&amp;quot;| Display Slide 3'''Prerequisites'''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000001;padding-top:0cm;padding-bottom:0cm;padding-left:0.191cm;padding-right:0.191cm;&amp;quot;| To follow this tutorial you should have knowledge of '''Shell Scripting''' in''' BASH.'''&lt;br /&gt;
&lt;br /&gt;
If not, for relevant tutorials, please visit our website which is as shown'''.'''&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000001;padding-top:0cm;padding-bottom:0cm;padding-left:0.191cm;padding-right:0.191cm;&amp;quot;| Display Slide 4&lt;br /&gt;
&lt;br /&gt;
'''System requirements'''&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000001;padding-top:0cm;padding-bottom:0cm;padding-left:0.191cm;padding-right:0.191cm;&amp;quot;| For this tutorial I am using''' '''&lt;br /&gt;
&lt;br /&gt;
* '''Ubuntu Linux''' 12.04''' '''Operating System and&lt;br /&gt;
* '''GNU BASH''' version 4.2&lt;br /&gt;
&lt;br /&gt;
Please note,''' GNU Bash''' '''version 4''' or above is recommended to practice this tutorial.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border-top:none;border-bottom:1pt solid #000001;border-left:1pt solid #000001;border-right:1pt solid #000001;padding-top:0cm;padding-bottom:0cm;padding-left:0.191cm;padding-right:0.191cm;&amp;quot;| Display Slide 5&lt;br /&gt;
&lt;br /&gt;
'''Source Command'''&lt;br /&gt;
| style=&amp;quot;border-top:none;border-bottom:1pt solid #000001;border-left:1pt solid #000001;border-right:1pt solid #000001;padding-top:0cm;padding-bottom:0cm;padding-left:0.191cm;padding-right:0.191cm;&amp;quot;| * '''Source '''command is used to load a file into '''Shell '''script.&lt;br /&gt;
* It reads and execute commands from that file.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border-top:none;border-bottom:1pt solid #000001;border-left:1pt solid #000001;border-right:1pt solid #000001;padding-top:0cm;padding-bottom:0cm;padding-left:0.191cm;padding-right:0.191cm;&amp;quot;| Display Slide 6&lt;br /&gt;
&lt;br /&gt;
'''Source Command'''&lt;br /&gt;
| style=&amp;quot;border-top:none;border-bottom:1pt solid #000001;border-left:1pt solid #000001;border-right:1pt solid #000001;padding-top:0cm;padding-bottom:0cm;padding-left:0.191cm;padding-right:0.191cm;&amp;quot;| * It also imports code into the script. &lt;br /&gt;
* This is useful when multiple scripts use a common data or a function library.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border-top:none;border-bottom:1pt solid #000001;border-left:1pt solid #000001;border-right:1pt solid #000001;padding-top:0cm;padding-bottom:0cm;padding-left:0.191cm;padding-right:0.191cm;&amp;quot;| &lt;br /&gt;
| style=&amp;quot;border-top:none;border-bottom:1pt solid #000001;border-left:1pt solid #000001;border-right:1pt solid #000001;padding-top:0cm;padding-bottom:0cm;padding-left:0.191cm;padding-right:0.191cm;&amp;quot;| The syntax for '''Source command '''is as follows.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border-top:none;border-bottom:1pt solid #000001;border-left:1pt solid #000001;border-right:1pt solid #000001;padding-top:0cm;padding-bottom:0cm;padding-left:0.191cm;padding-right:0.191cm;&amp;quot;| Display Slide 7&lt;br /&gt;
&lt;br /&gt;
'''Syntax:'''&lt;br /&gt;
&lt;br /&gt;
'''&amp;lt;nowiki&amp;gt;source &amp;lt;filename&amp;gt;&amp;lt;/nowiki&amp;gt;'''&lt;br /&gt;
&lt;br /&gt;
'''&amp;lt;nowiki&amp;gt;source &amp;lt;Path_to_file&amp;gt;&amp;lt;/nowiki&amp;gt;'''&lt;br /&gt;
&lt;br /&gt;
'''&amp;lt;nowiki&amp;gt;souce &amp;lt;filename&amp;gt; &amp;lt;arguments&amp;gt;&amp;lt;/nowiki&amp;gt;'''&lt;br /&gt;
| style=&amp;quot;border-top:none;border-bottom:1pt solid #000001;border-left:1pt solid #000001;border-right:1pt solid #000001;padding-top:0cm;padding-bottom:0cm;padding-left:0.191cm;padding-right:0.191cm;&amp;quot;| '''source space filename'''&lt;br /&gt;
&lt;br /&gt;
'''source space path_to_file'''&lt;br /&gt;
&lt;br /&gt;
'''source filename arguments'''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border-top:none;border-bottom:1pt solid #000001;border-left:1pt solid #000001;border-right:1pt solid #000001;padding-top:0cm;padding-bottom:0cm;padding-left:0.191cm;padding-right:0.191cm;&amp;quot;| Open '''function.sh''' file&lt;br /&gt;
| style=&amp;quot;border-top:none;border-bottom:1pt solid #000001;border-left:1pt solid #000001;border-right:1pt solid #000001;padding-top:0cm;padding-bottom:0cm;padding-left:0.191cm;padding-right:0.191cm;&amp;quot;| Let me open a file ''''function.sh''''. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border-top:none;border-bottom:1pt solid #000001;border-left:1pt solid #000001;border-right:1pt solid #000001;padding-top:0cm;padding-bottom:0cm;padding-left:0.191cm;padding-right:0.191cm;&amp;quot;| '''&amp;lt;nowiki&amp;gt;#!/usr/bin/env bash &amp;lt;/nowiki&amp;gt;'''&lt;br /&gt;
| style=&amp;quot;border-top:none;border-bottom:1pt solid #000001;border-left:1pt solid #000001;border-right:1pt solid #000001;padding-top:0cm;padding-bottom:0cm;padding-left:0.191cm;padding-right:0.191cm;&amp;quot;| This is a '''shebang line.'''&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border-top:none;border-bottom:1pt solid #000001;border-left:1pt solid #000001;border-right:1pt solid #000001;padding-top:0cm;padding-bottom:0cm;padding-left:0.191cm;padding-right:0.191cm;&amp;quot;| &amp;lt;nowiki&amp;gt;#function.sh&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;nowiki&amp;gt;[Highlight] &amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''source detail.sh '''&lt;br /&gt;
| style=&amp;quot;border-top:none;border-bottom:1pt solid #000001;border-left:1pt solid #000001;border-right:1pt solid #000001;padding-top:0cm;padding-bottom:0cm;padding-left:0.191cm;padding-right:0.191cm;&amp;quot;| Source''' detail.sh '''will''' '''load the file '''detail.sh '''into''' function.sh '''&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border-top:none;border-bottom:1pt solid #000001;border-left:1pt solid #000001;border-right:1pt solid #000001;padding-top:0cm;padding-bottom:0cm;padding-left:0.191cm;padding-right:0.191cm;&amp;quot;| function machine{&lt;br /&gt;
&lt;br /&gt;
type,&lt;br /&gt;
&lt;br /&gt;
'''echo &amp;quot;function machine is called in function.sh file&amp;quot;'''&lt;br /&gt;
&lt;br /&gt;
}&lt;br /&gt;
| style=&amp;quot;border-top:none;border-bottom:1pt solid #000001;border-left:1pt solid #000001;border-right:1pt solid #000001;padding-top:0cm;padding-bottom:0cm;padding-left:0.191cm;padding-right:0.191cm;&amp;quot;| Let me open''' detail.sh file. '''&lt;br /&gt;
&lt;br /&gt;
I have a function''' “machine”'''&lt;br /&gt;
&lt;br /&gt;
Now type here,&lt;br /&gt;
&lt;br /&gt;
'''echo &amp;quot;function machine is called in function.sh file&amp;quot;'''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border-top:none;border-bottom:1pt solid #000001;border-left:1pt solid #000001;border-right:1pt solid #000001;padding-top:0cm;padding-bottom:0cm;padding-left:0.191cm;padding-right:0.191cm;&amp;quot;| Type:&lt;br /&gt;
&lt;br /&gt;
'''echo''' '''“Beginning of program”'''&lt;br /&gt;
&lt;br /&gt;
'''machine'''&lt;br /&gt;
&lt;br /&gt;
'''echo “End of program”'''&lt;br /&gt;
| style=&amp;quot;border-top:none;border-bottom:1pt solid #000001;border-left:1pt solid #000001;border-right:1pt solid #000001;padding-top:0cm;padding-bottom:0cm;padding-left:0.191cm;padding-right:0.191cm;&amp;quot;| Let us go back to '''function.sh '''file.&lt;br /&gt;
&lt;br /&gt;
Type:&lt;br /&gt;
&lt;br /&gt;
'''echo''' '''“Beginning of program”'''&lt;br /&gt;
&lt;br /&gt;
click on''' Save'''&lt;br /&gt;
&lt;br /&gt;
Then type: '''machine'''&lt;br /&gt;
&lt;br /&gt;
'''echo “End of program”'''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border-top:none;border-bottom:1pt solid #000001;border-left:1pt solid #000001;border-right:1pt solid #000001;padding-top:0cm;padding-bottom:0cm;padding-left:0.191cm;padding-right:0.191cm;&amp;quot;| '''echo “Beginning of program”'''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''machine'''&lt;br /&gt;
&lt;br /&gt;
'''echo “End of program”'''&lt;br /&gt;
| style=&amp;quot;border-top:none;border-bottom:1pt solid #000001;border-left:1pt solid #000001;border-right:1pt solid #000001;padding-top:0cm;padding-bottom:0cm;padding-left:0.191cm;padding-right:0.191cm;&amp;quot;| This will print the message “Beginning of program”&lt;br /&gt;
&lt;br /&gt;
machine is the function call.&lt;br /&gt;
&lt;br /&gt;
This will print the message''' End of program'''&lt;br /&gt;
&lt;br /&gt;
Note that '''machine''' is the function which we created in the '''detail.sh''' file.&lt;br /&gt;
&lt;br /&gt;
And we are calling the function here in '''function.sh''' file.&lt;br /&gt;
&lt;br /&gt;
Now click on '''Save'''&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border-top:none;border-bottom:1pt solid #000001;border-left:1pt solid #000001;border-right:1pt solid #000001;padding-top:0cm;padding-bottom:0cm;padding-left:0.191cm;padding-right:0.191cm;&amp;quot;| &lt;br /&gt;
| style=&amp;quot;border-top:none;border-bottom:1pt solid #000001;border-left:1pt solid #000001;border-right:1pt solid #000001;padding-top:0cm;padding-bottom:0cm;padding-left:0.191cm;padding-right:0.191cm;&amp;quot;| Let us execute''' '''the program.&lt;br /&gt;
&lt;br /&gt;
So type on the terminal&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border-top:none;border-bottom:1pt solid #000001;border-left:1pt solid #000001;border-right:1pt solid #000001;padding-top:0cm;padding-bottom:0cm;padding-left:0.191cm;padding-right:0.191cm;&amp;quot;| Type''' '''&lt;br /&gt;
&lt;br /&gt;
'''chmod +x function.sh&amp;gt;&amp;gt;'''Press '''Enter '''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
| style=&amp;quot;border-top:none;border-bottom:1pt solid #000001;border-left:1pt solid #000001;border-right:1pt solid #000001;padding-top:0cm;padding-bottom:0cm;padding-left:0.191cm;padding-right:0.191cm;&amp;quot;| Type:'''chmod space plus x space function dot sh'''&lt;br /&gt;
&lt;br /&gt;
Press '''Enter.'''&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border-top:none;border-bottom:1pt solid #000001;border-left:1pt solid #000001;border-right:1pt solid #000001;padding-top:0cm;padding-bottom:0cm;padding-left:0.191cm;padding-right:0.191cm;&amp;quot;| Type''', '''&lt;br /&gt;
&lt;br /&gt;
'''./function.sh&amp;gt;&amp;gt;'''Press '''Enter'''&lt;br /&gt;
| style=&amp;quot;border-top:none;border-bottom:1pt solid #000001;border-left:1pt solid #000001;border-right:1pt solid #000001;padding-top:0cm;padding-bottom:0cm;padding-left:0.191cm;padding-right:0.191cm;&amp;quot;| Type '''dot slash function dot sh'''&lt;br /&gt;
&lt;br /&gt;
Press''' Enter.'''&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border-top:none;border-bottom:1pt solid #000001;border-left:1pt solid #000001;border-right:1pt solid #000001;padding-top:0cm;padding-bottom:0cm;padding-left:0.191cm;padding-right:0.191cm;&amp;quot;| Highlight&lt;br /&gt;
&lt;br /&gt;
'''Beginning of program'''&lt;br /&gt;
&lt;br /&gt;
'''function machine is called in function.sh file'''&lt;br /&gt;
&lt;br /&gt;
'''End of program'''&lt;br /&gt;
| style=&amp;quot;border-top:none;border-bottom:1pt solid #000001;border-left:1pt solid #000001;border-right:1pt solid #000001;padding-top:0cm;padding-bottom:0cm;padding-left:0.191cm;padding-right:0.191cm;&amp;quot;| The output is displayed&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border-top:none;border-bottom:1pt solid #000001;border-left:1pt solid #000001;border-right:1pt solid #000001;padding-top:0cm;padding-bottom:0cm;padding-left:0.191cm;padding-right:0.191cm;&amp;quot;| &lt;br /&gt;
| style=&amp;quot;border-top:none;border-bottom:1pt solid #000001;border-left:1pt solid #000001;border-right:1pt solid #000001;padding-top:0cm;padding-bottom:0cm;padding-left:0.191cm;padding-right:0.191cm;&amp;quot;| Let's move on to '''background function.'''&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border-top:none;border-bottom:1pt solid #000001;border-left:1pt solid #000001;border-right:1pt solid #000001;padding-top:0cm;padding-bottom:0cm;padding-left:0.191cm;padding-right:0.191cm;&amp;quot;| '''Display slide 9'''&lt;br /&gt;
&lt;br /&gt;
'''Background function'''&lt;br /&gt;
| style=&amp;quot;border-top:none;border-bottom:1pt solid #000001;border-left:1pt solid #000001;border-right:1pt solid #000001;padding-top:0cm;padding-bottom:0cm;padding-left:0.191cm;padding-right:0.191cm;&amp;quot;| * To run a process in the background, we use &amp;lt;tt&amp;gt;&amp;amp;&amp;lt;/tt&amp;gt;''' (ampersand)''' at the end of a '''function call.'''&lt;br /&gt;
* The '''shell''' forks a '''child process''' to run the command. &lt;br /&gt;
* The forked process will have a '''job number (&amp;lt;tt&amp;gt;&amp;lt;nowiki&amp;gt;[&amp;lt;/nowiki&amp;gt;&amp;lt;/tt&amp;gt;''n''&amp;lt;tt&amp;gt;]&amp;lt;/tt&amp;gt;)''' and a '''PID (Process IDentifier)'''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border-top:none;border-bottom:1pt solid #000001;border-left:1pt solid #000001;border-right:1pt solid #000001;padding-top:0cm;padding-bottom:0cm;padding-left:0.191cm;padding-right:0.191cm;&amp;quot;| &lt;br /&gt;
| style=&amp;quot;border-top:none;border-bottom:1pt solid #000001;border-left:1pt solid #000001;border-right:1pt solid #000001;padding-top:0cm;padding-bottom:0cm;padding-left:0.191cm;padding-right:0.191cm;&amp;quot;| Let us understand this with the help of an example. I will open the file '''background.sh'''&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border-top:none;border-bottom:1pt solid #000001;border-left:1pt solid #000001;border-right:1pt solid #000001;padding-top:0cm;padding-bottom:0cm;padding-left:0.191cm;padding-right:0.191cm;&amp;quot;| '''&amp;lt;nowiki&amp;gt;#!/usr/bin/env bash &amp;lt;/nowiki&amp;gt;'''&lt;br /&gt;
| style=&amp;quot;border-top:none;border-bottom:1pt solid #000001;border-left:1pt solid #000001;border-right:1pt solid #000001;padding-top:0cm;padding-bottom:0cm;padding-left:0.191cm;padding-right:0.191cm;&amp;quot;| This is the''' shebang line.'''&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border-top:none;border-bottom:1pt solid #000001;border-left:1pt solid #000001;border-right:1pt solid #000001;padding-top:0cm;padding-bottom:0cm;padding-left:0.191cm;padding-right:0.191cm;&amp;quot;| '''bg_function() '''&lt;br /&gt;
&lt;br /&gt;
'''{ '''&lt;br /&gt;
| style=&amp;quot;border-top:none;border-bottom:1pt solid #000001;border-left:1pt solid #000001;border-right:1pt solid #000001;padding-top:0cm;padding-bottom:0cm;padding-left:0.191cm;padding-right:0.191cm;&amp;quot;| '''bg underscore function''' marks the beginning of the '''function.'''&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border-top:none;border-bottom:1pt solid #000001;border-left:1pt solid #000001;border-right:1pt solid #000001;padding-top:0cm;padding-bottom:0cm;padding-left:0.191cm;padding-right:0.191cm;&amp;quot;| '''echo -e &amp;quot;Inside bg_function\n&amp;quot; '''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
| style=&amp;quot;border-top:none;border-bottom:1pt solid #000001;border-left:1pt solid #000001;border-right:1pt solid #000001;padding-top:0cm;padding-bottom:0cm;padding-left:0.191cm;padding-right:0.191cm;&amp;quot;| The echo statement here displays the message '''&amp;quot;Inside bg_function”'''&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border-top:none;border-bottom:1pt solid #000001;border-left:1pt solid #000001;border-right:1pt solid #000001;padding-top:0cm;padding-bottom:0cm;padding-left:0.191cm;padding-right:0.191cm;&amp;quot;| '''find . -iname &amp;quot;*.mp3&amp;quot; &amp;gt; myplaylist.txt'''&lt;br /&gt;
&lt;br /&gt;
'''} '''&lt;br /&gt;
| style=&amp;quot;border-top:none;border-bottom:1pt solid #000001;border-left:1pt solid #000001;border-right:1pt solid #000001;padding-top:0cm;padding-bottom:0cm;padding-left:0.191cm;padding-right:0.191cm;&amp;quot;| Next, we will use the '''find command '''to find all the .'''mp3 '''files.This statement will find all the files with the extension '''.mp3'''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
It will do so in the current working directory.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Hyphen iname '''is used to ignore the case.And the result is stored in''' myplaylist.txt '''file.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border-top:none;border-bottom:1pt solid #000001;border-left:1pt solid #000001;border-right:1pt solid #000001;padding-top:0cm;padding-bottom:0cm;padding-left:0.191cm;padding-right:0.191cm;&amp;quot;| '''bg_function &amp;amp;'''&lt;br /&gt;
| style=&amp;quot;border-top:none;border-bottom:1pt solid #000001;border-left:1pt solid #000001;border-right:1pt solid #000001;padding-top:0cm;padding-bottom:0cm;padding-left:0.191cm;padding-right:0.191cm;&amp;quot;| Now type:&lt;br /&gt;
&lt;br /&gt;
'''bg underscore function &amp;amp;'''&lt;br /&gt;
&lt;br /&gt;
This is '''function call.'''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Ampersand puts 'bg_function' in the background&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Let us execute the program.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border-top:none;border-bottom:1pt solid #000001;border-left:1pt solid #000001;border-right:1pt solid #000001;padding-top:0cm;padding-bottom:0cm;padding-left:0.191cm;padding-right:0.191cm;&amp;quot;| Type''' '''&lt;br /&gt;
&lt;br /&gt;
'''chmod +x background.sh&amp;gt;&amp;gt;'''Press '''Enter '''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
| style=&amp;quot;border-top:none;border-bottom:1pt solid #000001;border-left:1pt solid #000001;border-right:1pt solid #000001;padding-top:0cm;padding-bottom:0cm;padding-left:0.191cm;padding-right:0.191cm;&amp;quot;| Type:'''chmod space plus x space background dot sh'''&lt;br /&gt;
&lt;br /&gt;
Press '''Enter.'''&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border-top:none;border-bottom:1pt solid #000001;border-left:1pt solid #000001;border-right:1pt solid #000001;padding-top:0cm;padding-bottom:0cm;padding-left:0.191cm;padding-right:0.191cm;&amp;quot;| Type''', '''&lt;br /&gt;
&lt;br /&gt;
'''./background.sh&amp;gt;&amp;gt;'''Press '''Enter'''&lt;br /&gt;
| style=&amp;quot;border-top:none;border-bottom:1pt solid #000001;border-left:1pt solid #000001;border-right:1pt solid #000001;padding-top:0cm;padding-bottom:0cm;padding-left:0.191cm;padding-right:0.191cm;&amp;quot;| Type '''dot slash background dot sh'''&lt;br /&gt;
&lt;br /&gt;
Press''' Enter.'''&lt;br /&gt;
&lt;br /&gt;
The output is displayed.&lt;br /&gt;
&lt;br /&gt;
Blank output indicates '''.mp3''' file is not present in current directory.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border-top:none;border-bottom:1pt solid #000001;border-left:1pt solid #000001;border-right:1pt solid #000001;padding-top:0cm;padding-bottom:0cm;padding-left:0.191cm;padding-right:0.191cm;&amp;quot;| type: &lt;br /&gt;
&lt;br /&gt;
'''echo -e &amp;quot;Process runing in background are: \n&amp;quot; '''&lt;br /&gt;
&lt;br /&gt;
type: &lt;br /&gt;
&lt;br /&gt;
'''jobs -l'''&lt;br /&gt;
| style=&amp;quot;border-top:none;border-bottom:1pt solid #000001;border-left:1pt solid #000001;border-right:1pt solid #000001;padding-top:0cm;padding-bottom:0cm;padding-left:0.191cm;padding-right:0.191cm;&amp;quot;| Come back to our program.&lt;br /&gt;
&lt;br /&gt;
Now type: &lt;br /&gt;
&lt;br /&gt;
'''echo -e &amp;quot;Process runing in background are: \n&amp;quot; '''&lt;br /&gt;
&lt;br /&gt;
and&lt;br /&gt;
&lt;br /&gt;
'''jobs -l'''&lt;br /&gt;
&lt;br /&gt;
Click on''' Save'''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border-top:none;border-bottom:1pt solid #000001;border-left:1pt solid #000001;border-right:1pt solid #000001;padding-top:0cm;padding-bottom:0cm;padding-left:0.191cm;padding-right:0.191cm;&amp;quot;| '''&amp;quot;Process runing in background are: \n&amp;quot; '''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
| style=&amp;quot;border-top:none;border-bottom:1pt solid #000001;border-left:1pt solid #000001;border-right:1pt solid #000001;padding-top:0cm;padding-bottom:0cm;padding-left:0.191cm;padding-right:0.191cm;&amp;quot;| This '''echo statement '''displays the message “'''Process runing in background are:”'''&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border-top:none;border-bottom:1pt solid #000001;border-left:1pt solid #000001;border-right:1pt solid #000001;padding-top:0cm;padding-bottom:0cm;padding-left:0.191cm;padding-right:0.191cm;&amp;quot;| '''jobs -l'''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
| style=&amp;quot;border-top:none;border-bottom:1pt solid #000001;border-left:1pt solid #000001;border-right:1pt solid #000001;padding-top:0cm;padding-bottom:0cm;padding-left:0.191cm;padding-right:0.191cm;&amp;quot;| '''Jobs '''space''' hyphen l '''lists the status of all '''background jobs'''.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border-top:none;border-bottom:1pt solid #000001;border-left:1pt solid #000001;border-right:1pt solid #000001;padding-top:0cm;padding-bottom:0cm;padding-left:0.191cm;padding-right:0.191cm;&amp;quot;| Switch to '''terminal'''&lt;br /&gt;
| style=&amp;quot;border-top:none;border-bottom:1pt solid #000001;border-left:1pt solid #000001;border-right:1pt solid #000001;padding-top:0cm;padding-bottom:0cm;padding-left:0.191cm;padding-right:0.191cm;&amp;quot;| Now come back to our terminal.&lt;br /&gt;
&lt;br /&gt;
Let me clear the prompt.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border-top:none;border-bottom:1pt solid #000001;border-left:1pt solid #000001;border-right:1pt solid #000001;padding-top:0cm;padding-bottom:0cm;padding-left:0.191cm;padding-right:0.191cm;&amp;quot;| Type''' '''&lt;br /&gt;
&lt;br /&gt;
'''Press the uparrow key.'''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
| style=&amp;quot;border-top:none;border-bottom:1pt solid #000001;border-left:1pt solid #000001;border-right:1pt solid #000001;padding-top:0cm;padding-bottom:0cm;padding-left:0.191cm;padding-right:0.191cm;&amp;quot;| Press the''' uparrow '''key''' '''twice'''.'''&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000001;padding-top:0cm;padding-bottom:0cm;padding-left:0.191cm;padding-right:0.191cm;&amp;quot;| Type''', '''&lt;br /&gt;
&lt;br /&gt;
'''./background.sh&amp;gt;&amp;gt;'''Press '''Enter'''&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000001;padding-top:0cm;padding-bottom:0cm;padding-left:0.191cm;padding-right:0.191cm;&amp;quot;| Press''' Enter.'''&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border-top:none;border-bottom:1pt solid #000001;border-left:1pt solid #000001;border-right:1pt solid #000001;padding-top:0cm;padding-bottom:0cm;padding-left:0.191cm;padding-right:0.191cm;&amp;quot;| Terminal:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;nowiki&amp;gt;[Output]&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Inside bg_function &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Process runing in background are: &lt;br /&gt;
&lt;br /&gt;
&amp;lt;nowiki&amp;gt;[1]+ &amp;lt;/nowiki&amp;gt;5787 Running bg_function &amp;amp; &lt;br /&gt;
&lt;br /&gt;
Last line of the code &lt;br /&gt;
| style=&amp;quot;border-top:none;border-bottom:1pt solid #000001;border-left:1pt solid #000001;border-right:1pt solid #000001;padding-top:0cm;padding-bottom:0cm;padding-left:0.191cm;padding-right:0.191cm;&amp;quot;| The output is shown.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Here, one within opening and closing square bracket is the '''job number.'''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''5787 is the PID.'''&lt;br /&gt;
&lt;br /&gt;
'''PID '''will vary accordingly.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''If the function takes time to execute, it will run in the background.'''&lt;br /&gt;
&lt;br /&gt;
'''And we will see the status as 'Running' '''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''If the function gets executed before the script, we will see the status as 'Done'.''''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The output will vary from machine to machine.&lt;br /&gt;
&lt;br /&gt;
This brings us to the end of this tutorial.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border-top:none;border-bottom:1pt solid #000001;border-left:1pt solid #000001;border-right:1pt solid #000001;padding-top:0cm;padding-bottom:0cm;padding-left:0.191cm;padding-right:0.191cm;&amp;quot;| Display Slide 10&lt;br /&gt;
&lt;br /&gt;
Summary&lt;br /&gt;
| style=&amp;quot;border-top:none;border-bottom:1pt solid #000001;border-left:1pt solid #000001;border-right:1pt solid #000001;padding-top:0cm;padding-bottom:0cm;padding-left:0.191cm;padding-right:0.191cm;&amp;quot;| '''Summary''' &lt;br /&gt;
&lt;br /&gt;
Let us summarise. &lt;br /&gt;
&lt;br /&gt;
In this tutorial we learnt&lt;br /&gt;
&lt;br /&gt;
* '''Source '''command&lt;br /&gt;
* To put a function in '''background'''&lt;br /&gt;
* With the help of some examples &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000001;padding-top:0cm;padding-bottom:0cm;padding-left:0.191cm;padding-right:0.191cm;&amp;quot;| Display Slide 10&lt;br /&gt;
&lt;br /&gt;
Assignment&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000001;padding-top:0cm;padding-bottom:0cm;padding-left:0.191cm;padding-right:0.191cm;&amp;quot;| As an assignment:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Write a function '''addnumbers '''to add two numbers and call the function in another file.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000001;padding-top:0cm;padding-bottom:0cm;padding-left:0.191cm;padding-right:0.191cm;&amp;quot;| Display Slide 11&lt;br /&gt;
&lt;br /&gt;
http://spoken-tutorial.org /What\_is\_a\_Spoken\_Tutorial&lt;br /&gt;
&lt;br /&gt;
About the Spoken Tutorial Project&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000001;padding-top:0cm;padding-bottom:0cm;padding-left:0.191cm;padding-right:0.191cm;&amp;quot;| Watch the video available at the link shown below.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
It summarises the Spoken Tutorial project.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
If you do not have good bandwidth, you can download and watch it.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000001;padding-top:0cm;padding-bottom:0cm;padding-left:0.191cm;padding-right:0.191cm;&amp;quot;| Display Slide 12&lt;br /&gt;
&lt;br /&gt;
Spoken Tutorial Workshops&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000001;padding-top:0cm;padding-bottom:0cm;padding-left:0.191cm;padding-right:0.191cm;&amp;quot;| The Spoken Tutorial Project Team&lt;br /&gt;
&lt;br /&gt;
* Conducts workshops using spoken tutorials&lt;br /&gt;
* Gives certificates to those who pass an online test&lt;br /&gt;
&lt;br /&gt;
For more details, please write to&lt;br /&gt;
&lt;br /&gt;
contact@spoken-tutorial.org&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000001;padding-top:0cm;padding-bottom:0cm;padding-left:0.191cm;padding-right:0.191cm;&amp;quot;| Display Slide 13&lt;br /&gt;
&lt;br /&gt;
Acknowledgement&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000001;padding-top:0cm;padding-bottom:0cm;padding-left:0.191cm;padding-right:0.191cm;&amp;quot;| Spoken Tutorial Project is a part of the Talk to a Teacher project.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
It is supported by the National Mission on Education through ICT, MHRD, Government of India.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
More information on this Mission is available at: &lt;br /&gt;
&lt;br /&gt;
http://spoken-tutorial.org\NMEICT-Intro&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000001;padding-top:0cm;padding-bottom:0cm;padding-left:0.191cm;padding-right:0.191cm;&amp;quot;| Display Slide 14&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000001;padding-top:0cm;padding-bottom:0cm;padding-left:0.191cm;padding-right:0.191cm;&amp;quot;| The script has been contributed by FOSSEE and Spoken-Tutorial teams.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
This is Ashwini from IIT Bombay.&lt;br /&gt;
&lt;br /&gt;
Thank you for joining.&lt;br /&gt;
&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>Ashwini</name></author>	</entry>

	</feed>