KSH: Import File With Variables and Functions

Posted on in Categories last updated September 20, 2011

How do I import variables and functions defined in lib.ksh script to another ksh script called setup.ksh under Linux / Unix like operating systems? How do I execute commands from a file in the current KSH shell?

To read and execute commands from given FILENAME in the current shell use the following syntax:

. /path/to/file


. /path/to/lib.ksh

The . (dot) is one of the KSH built-in commands. You can also use an alias called source as follows:

source /path/to/lib.ksh


Create a script called /tmp/lib.ksh as follows:

# defaul values ##
# Display info
function showvech {
  printf "Vehicle: %s\n" $vech
  printf "Type (ac or non-ac): %s\n" $type
  printf "Rent (per/km): Rs.%d km\n" $rent
# Set info
function setvech {

Create a script called test.ksh:

# source our /tmp/lib.ksh
. /tmp/lib.ksh
# show defaults
# set new values and display it back
setvech "Jeep" 9 "Non-A/C"

Sample outputs:

Vehicle: Bus
Type (ac or non-ac): A/C
Rent (per/km): Rs.14 km
Vehicle: Jeep
Type (ac or non-ac): Non-A/C
Rent (per/km): Rs.9 km

Posted by: Vivek Gite

The author is the creator of nixCraft and a seasoned sysadmin, DevOps engineer, and a trainer for the Linux operating system/Unix shell scripting. Get the latest tutorials on SysAdmin, Linux/Unix and open source topics via RSS/XML feed or weekly email newsletter.

Share this on (or read 0 comments/add one below):