Skip to Content
Shell Scripting: Expert Recipes for Linux, Bash, and More
book

Shell Scripting: Expert Recipes for Linux, Bash, and More

by Steve Parker
August 2011
Beginner to intermediate
600 pages
14h 29m
English
Wrox
Content preview from Shell Scripting: Expert Recipes for Linux, Bash, and More

Exec

The exec builtin calls the underlying exec(3) system call. It has two main purposes. The first is the way in which the system call is most commonly used — to replace the currently running process with a different process. That is, the shell itself will be replaced by a different program, be it another shell, or any other program. When the exec’d program terminates, control is not returned to the calling shell. The second use is to cause redirection to happen as a byproduct of the exec call.

Using exec to Replace the Existing Program

A typical login session is shown in the following example, when the user logs in to node2 from node1. The hostnames are reflected in the shell prompts, and the % prompt reflects a csh session, while the $ prompt reflects a bash session.

THE USER LOGS IN TO NODE2 FROM NODE1, AND IS GREETED WITH A CSH PROMPT.

steve@node1:~$ ssh node2
steve@node2's password:
You have new mail.
Last login: Mon Jan 17 15:19:53 2011
steve@node2%

PREFERRING BASH, THE USER THEN CALLS BASH FROM THE CSH PROMPT.

steve@node2% bash

THE USER THEN DOES WHATEVER IS WANTED IN THE BASH SHELL.

steve@node2:~$ # do stuff in bash
steve@node2:~$ echo $SHELL
/bin/bash

ON COMPLETING THE TASKS, THE USER EXITS THE SHELL. INSTEAD OF CLOSING THE CONNECTION, THE USER SIMPLY DROPS BACK TO THE CALLING CSH SESSION; TO CSH, BASH WAS JUST ANOTHER PROGRAM, WHICH RAN AND HAS NOW COMPLETED EXECUTION.

steve@node2:~$ exit
exit
steve@node2%

THE USER EXITS THE CSH SESSION AND FINALLY ...

Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.
Start your free trial

You might also like

Linux Command Line and Shell Scripting Techniques

Linux Command Line and Shell Scripting Techniques

Vedran Dakic, Jasmin Redzepagic
Linux Shell Scripting Cookbook - Third Edition

Linux Shell Scripting Cookbook - Third Edition

Clif Flynt, Sarath Lakshman, Shantanu Tushar

Publisher Resources

ISBN: 9781118166321Purchase bookDownloads