bash – 是否可以避免执行某个命令?

前端之家收集整理的这篇文章主要介绍了bash – 是否可以避免执行某个命令?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我必须避免在bash脚本中执行某个命令.
我想用一个preexec陷阱来做到这一点.

假设我想避免命令’source’仅用于axample.
我做的基本上是以下几点:

#!/bin/bash

function preexec ()
{
    if test $( echo "$BASH_COMMAND" | cut -d " " -f1 ) == "source"
        then
            echo ">>> do not execute this"
        else
            echo ">>> execute this"

    fi
}
trap 'preexec' DEBUG

echo "start"
source "source.sh"
echo "go on"

exit 0

这个想法很好,但此时我不知道如何避免执行所述命令.
不知道怎么解决这个问题?

一种解决方法是为该命令定义一个别名,该命令不执行任何操作,并在脚本完成后取消定义.必须在脚本本身内声明别名才能使其工作:
alias source=:
## The actual script source here...
unalias source

猜你在找的Bash相关文章