取消设置bash脚本中一行的功能

时间:2016-06-09 21:48:25

标签: bash

在脚本中,我已定义:rm() { echo "rm $@" }

通常rm会运行echo rm,但我想将其更改为单行以运行实际的rm命令。我怎样才能做到这一点?

我试过了:

rm= rm file但仍然会运行echo rm file

我不想unset rm因为我仍然希望能够运行rm file并期望它回应。

注意:rm只是一个示例命令,而不是我实际使用的命令。

1 个答案:

答案 0 :(得分:6)

您可以使用command以相同名称运行命令而不是函数:

#!/bin/bash
hostname() {
  echo "You are in a maze of twisty little passages, all alike. "
}

hostname            # runs the function
command hostname    # runs the external command