bashoutputbuilt-in

Don't display pushd/popd stack across several bash scripts (quiet pushd/popd)


Each time I use pushd or popd, it print the stack to standard output. How not to do so?

I don't want to do pushd > /dev/null each time because I have a lot of scripts calling each other.

Maybe a nice override will do it, but I'll need to override these builtins only in my scripts, and then restore the correct behavior.


Solution

  • You could add

    pushd () {
        command pushd "$@" > /dev/null
    }
    
    popd () {
        command popd "$@" > /dev/null
    }
    

    to the top of each script. This is probably the minimum amount of work it will take to solve your problem.