如何从文本脚本调用一个函数?

如何从文本脚本调用一个函数?

我有一个包含很多功能的文本文件。例如:

# fisrt function
# runs update and upgrade
    function upug() {
        sudo apt-get update && sudo apt-get upgrade
    }

# second function
# find out the processes running that use the most memory
    function memusage() {
        ps aux | sort -nrk 4 | head
    }
# third function
# install package
    function ipkg() {
        sudo apt-get install
    }
[...]

现在我希望能够在终端中以类似的方式使用这些功能:

  • upug在终端调用中运行function upug()

    user@test-pc:~$ upug 
    
  • memusage在终端调用中运行function memusage()

    user@test-pc:~$ memusage
    
  • 伴随着令人激动的ipkg package_Name呼唤function ipkg()

    user@test-pc:~$ ipkg package_Name
    

我为每个命令都创建了一个带有函数名的别名。现在的问题是如何用别名调用这些函数?

答案1

如果我是你,我会把函数和别名都放进我的~/.bash_aliases(见别名:.bash_rc、.bash_aliases 和 /usr/local/bin 之间的区别)。

由于您已经在当前会话中定义了别名,因此您可以直接获取文本文件以便稍后调用别名命令:

user@test-pc:~$ . <PATH_TO_YOUR_TEXT_COMMANDS>/my_commands.txt
user@test-pc:~$ upug

或者,您也可以按如下方式从您的位置加载文件~/.bashrc

if [ -f <PATH_TO_YOUR_TEXT_COMMANDS>/my_commands.txt ]; then
    . <PATH_TO_YOUR_TEXT_COMMANDS>/my_commands.txt
fi

相关内容