BASH/C3/Using-File-Descriptors/English-timed
From Script | Spoken-Tutorial
Revision as of 12:51, 8 December 2014 by PoojaMoolya (Talk | contribs)
Time | Narration |
00.01 | Dear friends, Welcome to the spoken tutorial on Using file descriptors |
00.08 | In this tutorial, we will learn to |
00.11 | * Assign an output file descriptor |
00.14 | * Assign an input file descriptor |
00.17 | * Close the file descriptor (fd) |
00.19 | * With the help of some examples |
00.23 | To follow this tutorial you should have knowledge of Shell Scripting in BASH. |
00.29 | If not, for relevant tutorials please visit our website which is as shown,http://www.spoken-tutorial.org |
00.35 | For this tutorial I am using |
00.38 | * Ubuntu Linux 12.04 Operating System |
00.43 | * GNU BASH version 4.2 |
00.46 | Please note, GNU Bash version 4 or above is recommended for practice. |
00.54 | Let us start with an introduction. |
00.56 | We have already studied about file descriptors in the previous tutorial. |
01.02 | * 0, 1 and 2 are the standard file descriptors for stdin, stdout and stderr |
01.15 | * File descriptors are used for i/o redirection. |
01.20 | The syntax to assign a file descriptor to an output file is: |
01.25 | exec [File descriptor] greater than symbol filename |
01.31 | Let us see an example. |
01.33 | I have a code file with the name fdassign dot sh |
01.43 | The first line is the shebang line. |
01.49 | The exec command replaces the current shell process. |
01.56 | It will be executed in the place of the current shell without creating a new process. |
02.04 | We know that 0, 1, and 2 are standard file descriptors. |
02.09 | For any newly opened file, we have additional file descriptors from 3 to 9. |
02.19 | Here, 3 is the file descriptor. |
02.22 | This will write the output to the output dot txt file. |
02.30 | The string "Welcome to BASH learning" is sent to the file output dot txt |
02.36 | This is done via file descriptor 3. |
02.42 | This is similar to redirecting a string to a file. |
02.49 | Each new string will be appended to the file. |
02.52 | For example: |
02.54 | We will append the current system date to the output dot txt file. |
03.00 | The syntax is: date SPACE greater-than symbol ampersand sign 3 |
03.13 | Here we close the file descriptor. |
03.16 | After this line, the descriptor cannot write anything to the output dot txt file. |
03.23 | Let us execute the code and see the output. |
03.26 | Open the terminal using CTRL+ALT+T keys. |
03.34 | Type: chmod space plus x space fdassign dot sh |
03.41 | Type: dot slash fdassign dot sh |
03.46 | Let us check the output now by typing cat space output dot txt |
03.56 | We can see that the string Welcome to BASH learning and the current system date is displayed. |
04.05 | Let us go back to the editor. |
04.11 | Now I will type echo at the end, after the descriptor is closed. |
04.17 | Type: echo within double quotes Hi after quotes space greater than symbol ampersand sign 3 |
04.31 | Click on Save. |
04.35 | Let us execute the script once again and see what happens. |
04.38 | On the terminal, press the uparrow key twice recall the previous command dot slash fdassign dot sh |
04.50 | press Enter. |
04.52 | We see an error |
04.55 | Bad file descriptor |
04.58 | Let us fix this error. |
05.00 | Come back to the editor. |
05.03 | I will cut the last line of code and paste it below the date command |
05.11 | Click on Save. |
05.13 | Let us execute the code once again. On the terminal |
05.19 | Recall the previous command dot slash fdassign.sh |
05.24 | press Enter. |
05.26 | Now let us open the output dot txt file. |
05.29 | Type: cat space output dot txt |
05.41 | We can see the output. |
05.43 | The string Hi is displayed at the end. |
05.49 | Now we will assign the file descriptor to the input file. |
05.54 | Let us see an example. |
05.56 | I have a file named fdread dot sh |
06.03 | Let us go through it. |
06.07 | This is the exec command. |
06.13 | Here we will read the file output dot txt |
06.19 | The line exec 3 greater than symbol output dot txt will open the file for reading. |
06.30 | cat command will display the content of the file. |
06.35 | And finally we close the file descriptor. |
06.39 | Now let us execute this shell script. |
06.42 | On the terminal, let me clear the prompt. |
06.47 | Type: chmod space plus x space fdread dot sh |
06.55 | Type dot slash fdread dot sh |
07.01 | We can see the output on the terminal. |
07.05 | The content of output dot txt file is displayed. |
07.10 | This brings us to the end of this tutorial. |
07.13 | Come back to the slides. |
07.16 | Let us summarize. |
07.17 | In this tutorial we learnt to, |
07.19 | * Assign the output file descriptor |
07.22 | * Assign the input file descriptor |
07.26 | * Close the file descriptor. |
07.28 | As an assignment, |
07.30 | Try to append a few lines to a file test dot txtusing file descriptors |
07.36 | Display the content of the file using file descriptors |
07.41 | Watch the video available at the link shown below. |
07.45 | It summarises the Spoken Tutorial project. |
07.48 | If you do not have good bandwidth, you can download and watch it. |
07.53 | The Spoken Tutorial Project Team Conducts workshops using spoken tutorials |
07.58 | Gives certificates to those who pass an online test |
08.02 | For more details, please write to contact@spoken-tutorial.org |
08.10 | Spoken Tutorial Project is a part of the Talk to a Teacher project. |
08.14 | It is supported by the National Mission on Education through ICT, MHRD, Government of India. |
08.22 | More information on this Mission is available at the link shown below http://spoken-tutorial.org\NMEICT-Intro |
08.28 | The script has been contributed by FOSSEE and Spoken-Tutorial teams. |
08.33 | This is Ashwini Patil from IIT Bombay. Signing off |
08.37 | Thank you for joining. |