代码之家  ›  专栏  ›  技术社区  ›  Peter Coulton

如何将此路径传递给bash函数?

  •  0
  • Peter Coulton  · 技术社区  · 16 年前

    cd 这将列出目录内容,并看到以下内容:

    cdls { cd $1; ls; }
    alias cd='cdls'
    

    所以问题是,当我尝试这个方法时,它失败了:

    $ cd /cygdrive/c/Program\ Files/
    bash: cd: /cygdrive/c/Program: No such file or directory
    

    我可以看到,空格导致路径被拆分为多个参数,但是如何将它们再次连接在一起呢?

    3 回复  |  直到 16 年前
        1
  •  3
  •   womble    16 年前

    引用它:

    cdls { cd "$1"; ls; }
    

    bash中的引用可能会有问题,因为有多个层次的解释,但通常只是玩一下而已。

        2
  •  1
  •   Greg Hewgill    16 年前

    cdls() { cd "$1"; ls; }
    
        3
  •  0
  •   Peter Coulton    16 年前

    看来我只是需要解释一下问题的答案。我的解决办法是:

    cdls () { cd "$*"; ls ; }
    alias cd='cdls'