代码之家  ›  专栏  ›  技术社区  ›  ravi

如何将当前目录路径存储在windows bash脚本中的变量中?

  •  0
  • ravi  · 技术社区  · 5 年前

    我正在构建meteor应用程序,并通过windows中的bash脚本在客户端系统中安装该应用程序。

    我尝试了许多解决方案,但后来我发现所有这些都是针对批处理脚本的。

    mkdir upload
    cd upload
    DB_IMG_PATH=cd // I need to set path here in any variable and later use it below to write in settings.json file
    echo %DB_IMG_PATH%
    cd ..
    
    echo '{"public":{"imgUploadUrl":"D:/mssqlempowervisi/upload","adminUser":"admin@mitch.org","adminPassword":"admin@123"}}' >> settings.json
    
    1 回复  |  直到 5 年前
        1
  •  2
  •   Camusensei    5 年前

    假设您真的在bash中:

    mkdir upload
    cd upload
    DB_IMG_PATH=$PWD
    echo "$DB_IMG_PATH"
    cd ..
    
    echo '{"public":{"imgUploadUrl":"'"$DB_IMAGE_PATH"'","adminUser":"admin@mitch.org","adminPassword":"admin@123"}}' >> settings.json
    

    同样的事情,没有不必要的cd步骤:

    mkdir upload
    DB_IMG_PATH=$PWD/upload
    echo "$DB_IMG_PATH"
    

    但请注意:

    • 按照惯例,我们将环境变量(分页器、编辑器等)和内部shell变量(shell、BASH_版本等)大写。所有其他变量名称应为小写。记住变量名是区分大小写的;此约定避免意外重写环境和内部变量。
    • 除非检查脚本是否失败,否则不要更改脚本中的目录! cd $foo 这很糟糕。 cd "$foo" || exit