【问题标题】:Command to cd to root of projectcd到项目根目录的命令
【发布时间】:2017-04-21 09:42:05
【问题描述】:

我的项目根目录中有一个特定文件。我有一个命令行应用程序(suman),它知道这个文件的位置。是否有一个命令行开关可以提供给我的命令行应用程序,它可以带我进入项目根目录。

类似

suman --homesuman -hsuman --root

我可以写什么作为这个命令的例程,它实际上会改变发出这个命令的父 shell 的当前目录?我什至不确定这是否可能。

【问题讨论】:

标签: bash shell cd suman


【解决方案1】:

您可以为此使用 (bash/shell) 函数:

suman() {
   cd ~/project
   command suman "$@"
   cd -
}
  • cd ~/project - 将目录更改为 $HOME/project
  • command suman "$@" - 运行实际的 suman 命令
  • cd - - 将目录改回原来的位置

【讨论】:

  • 好吧,我并不总是想 cd,我只想在通过 -h 开关时 cd 到项目根目录
  • 好的,请参阅我的更新答案。 cd - 最后将目录改回来。
  • 一件事是 - 我不确定如何将项目根值存储为环境变量,我必须以某种方式设置它,因为它不会作为参数传递
  • 您可以在~/.bashc 中设置项目根目录,例如export projectDir="$HOME/project" 然后使用 cd "$projectDir" 作为这个函数体的第一行。
  • 谢谢,这是一个图书馆,寻找用户可以使用的东西,这是更自动的。
【解决方案2】:

如果你有一个 NPM 项目,你可以这样做

function npmcd {
   cd $(npm root) &&
   cd ..
}

将以上内容放入~/.bashrc

你应该很高兴

无论您在项目中的哪个位置,都可以在命令行发出 npmcd,它会将您的终端带到项目的根目录,非常swift

【讨论】:

    猜你喜欢
    • 2014-02-25
    • 2014-08-02
    • 2020-02-26
    • 1970-01-01
    • 2015-01-01
    • 2020-02-26
    • 2015-11-08
    • 2019-02-27
    • 2011-06-02
    相关资源
    最近更新 更多