Can bash show a function's definition?

前端 未结 4 2050
野的像风
野的像风 2020-12-22 15:21

Is there a way to view a bash function\'s definition in bash?

For example, say I defined the function foobar

function foobar {
    echo          


        
4条回答
  •  半阙折子戏
    2020-12-22 15:42

    Use type. If foobar is e.g. defined in your ~/.profile:

    $ type foobar
    foobar is a function
    foobar {
        echo "I'm foobar"
    }
    

    This does find out what foobar was, and if it was defined as a function it calls declare -f as explained by pmohandras.

    To print out just the body of the function (i.e. the code) use sed:

    type foobar | sed '1,3d;$d'
    

提交回复
热议问题