代码之家  ›  专栏  ›  技术社区  ›  James Whiteley

组合bash中的函数

  •  0
  • James Whiteley  · 技术社区  · 6 年前

    我在我的 ~/.bash_aliases 文件;一个返回当前工作文件夹(最后一个文件夹之后的所有内容 / 在目录路径中),一个设置终端选项卡:

    function set-location { printf "\e]2;$1\a"; }
    function get-location {
        local location=${PWD##*/}
        echo "$location"
    }
    

    说我在目录里 james/foo/bar . 结合这两个功能,我希望终端窗口设置为 bar . 然而,我无法解决如何有效地组合它们。我尝试了以下方法,但没有用,尽管我只是在猜测在这一点上会起什么作用:

    set-location get-location # terminal title: get-location
    set-location $get-location # terminal title: -location
    set-location ${get-location} # terminal title: location
    set-location "${get-location}" # terminal title: location
    get-location | set-location # terminal title: Terminal
    

    如何将这两个函数组合在一行中,以便将位置设置为 get-location ?

    1 回复  |  直到 6 年前
        1
  •  2
  •   choroba    6 年前

    使用命令替换

    set-location "$(get-location)"