簡體   English   中英

在bash腳本中為一行設置一個功能

[英]unset a function for one line in a bash script

在腳本中,我定義了: rm() { echo "rm $@" }

通常rm將運行echo rm ,但我想將其更改為一行以運行實際的rm命令。 我怎樣才能做到這一點?

我試過了:

rm= rm file但這仍然運行echo rm file

我不想unset rm因為我仍然希望能夠運行rm file並期望它回顯。

注意: rm只是一個示例命令,不是我實際使用的命令。

您可以使用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

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM