≡ Menu

KSH: Import File With Variables and Functions

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

OR

. /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

Example

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

#!/bin/ksh
# defaul values ##
vech="Bus"
rent=14
type="A/C"
 
 
# 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 {
  vech="$1"
  rent=$2
  type="$3"
}

Create a script called test.ksh:

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

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
Share this tutorial on:

{ 0 comments… add one }

Leave a Comment


   Tagged with: , , , , , , ,