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
🐧 Please support my work on Patreon or with a donation.
🐧 Get the latest tutorials on Linux, Open Source & DevOps via:
🐧 Get the latest tutorials on Linux, Open Source & DevOps via:
- RSS feed or Weekly email newsletter
- Share on Twitter • Facebook • 0 comments... add one ↓
Category | List of Unix and Linux commands |
---|---|
File Management | cat |
Firewall | Alpine Awall • CentOS 8 • OpenSUSE • RHEL 8 • Ubuntu 16.04 • Ubuntu 18.04 • Ubuntu 20.04 |
Network Utilities | dig • host • ip • nmap |
OpenVPN | CentOS 7 • CentOS 8 • Debian 10 • Debian 8/9 • Ubuntu 18.04 • Ubuntu 20.04 |
Package Manager | apk • apt |
Processes Management | bg • chroot • cron • disown • fg • jobs • killall • kill • pidof • pstree • pwdx • time |
Searching | grep • whereis • which |
User Information | groups • id • lastcomm • last • lid/libuser-lid • logname • members • users • whoami • who • w |
WireGuard VPN | Alpine • CentOS 8 • Debian 10 • Firewall • Ubuntu 20.04 |