Просто напишите это как функцию и включите в свой скрипт.
Например, напишите «утилиту» или «сценарий функции». давайте назовем его util.sh
, и в нем будут только функции:
#!/bin/sh
sqlCall () {
echo "sqlCall(), \$1:["${1}"]"
}
repeatedFunction () {
echo "repeated x:["${1}"] times"
RETURNVAR=`date`
}
А затем script1.sh
и script2.sh
могут включать util .sh
примерно так:
#!/bin/sh
#
# script 1 - includes util.sh, calls only sqlCall
# Include the functions
. /path/to/util.sh
var="s1 s2 s3"
for s in $var
do
sqlCall $s
done
И это script2.sh
#!/bin/sh
#
# script 2 - includes util.sh, calls only repeatedFunction
# Include the functions
. /path/to/util.sh
i=0
while [ $i -lt 4 ]
do
repeatedFunction $i
i=$(($i + 1))
done
echo "Date: ${RETURNVAR}"
И результатом для этого будет:
sh ./script1.sh
sqlCall(), $1:[s1]
sqlCall(), $1:[s2]
sqlCall(), $1:[s3]
sh ./script2.sh
repeated x:[0] times
repeated x:[1] times
repeated x:[2] times
repeated x:[3] times
Date: Fri Jun 16 21:15:24 AEST 2017