コマンド foo と同名の関数 foo を作成し、後者の中から前者を呼び出そうと思っています。
function foo {
 foo
}
しかし当然ながら無限ループになります。
解決策としては
function foo {
 `which foo`
}
という方法があります。
しかし毎回 which コマンドを起動するのがちょっと気にかかります。
別の方法として
function foo {
 ¥foo
}
というのを試しましたが、だめでした。¥foo はエイリアスには効くけど関数にはききませんでした。
というわけで、今のところ which コマンドを使う方法しかなさそうですが、もっといい方法があれば教えて下さい。