Call functions vs call external program?

1k Views Asked by At

Suppose I have a program named abc in the search path, and I write a script containing the following:

#!/bin/sh
abc() {
    echo Hello
}
$1

Invoking this script with a parameter abc calls the function. Is there a way to always run the external program instead?

1

There are 1 best solutions below

0
On BEST ANSWER

OK, this seems to do the job:

#!/bin/sh
abc() {
    echo Hello
}

# calls whatever the argument contains in a new context
sh -c $1

# I can still call my function
abc