【问题标题】:.sh to .bat files converting [closed].sh 到 .bat 文件转换[关闭]
【发布时间】:2015-11-17 14:44:06
【问题描述】:

我需要将 .sh 文件转换为 .bat 文件,但不知道正确的语法。我已经完成了一些我找到的翻译,但我不太确定所有 sh 语法。非常感谢您给我的所有建议。

这是我到目前为止所做的:

setlocal
rem!\bin\bat`enter code here`


    rem *****************************************************
    rem * Setting up the JBOSS local variables
    rem *****************************************************

    if [ "x%PROJECT_DIR%" = "x" ]; then
        DIRNAME=`dirname $0`
        PWD="$( cd -P "$DIRNAME" && pwd )"
        SET PROJECT_DIR="$( cd -P "$PWD" && pwd )"
    fi
    SET JBOSS_DIR=%PROJECT_DIR%\..\..\nqi\4.3\nqi\orchestra\jboss
    SET SERVER_HOME_DIR=$JBOSS_DIR\orchestra
    SET PORTFOLIO_CONFIG=%PROJECT_DIR%\..\..\nqi\4.3\nqi\orchestra\applications\custom\portfolio
    rem *****************************************************


    echo "XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX"
    echo ""
    echo "DIRNAME = %DIRNAME%"
    echo "PROJECT_DIR = %PROJECT_DIR%"
    echo "SERVER_HOME_DIR = %SERVER_HOME_DIR%"
    echo ""
    echo "  nqidb-ds.xml deployement"
    rm -f %SERVER_HOME_DIR%\deploy\nqidb-ds.xml
    cp -Tfv %PROJECT_DIR%\dev_stuff\nqidb-ds.xml %SERVER_HOME_DIR%\deploy\nqidb-ds.xml

    echo ""
    echo "  ui properties deployement"
    rm -rf %PROJECT_DIR%\applications\local
    mkdir %PROJECT_DIR%\applications\local
    mkdir %PROJECT_DIR%\applications\local\nqi-ui
    cp -Tfv %PROJECT_DIR%\dev_stuff\nqi-ui.properties %PROJECT_DIR%\applications\local\nqi-ui\nqi-ui.properties

    echo ""
    echo "  workflow deployement"
    mkdir %PROJECT_DIR%\applications\local\workflow
    cp -Tfv %PROJECT_DIR%\dev_stuff\workflow-config.xml %PROJECT_DIR%\applications\local\workflow\workflow-config.xml

    echo ""
    echo "  license deployement"
    mkdir %PROJECT_DIR%\applications\local\license
    cp -Tfv %PROJECT_DIR%\dev_stuff\nqi.license %PROJECT_DIR%\applications\local\license\nqi.license

    echo ""
    echo "XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX"
    echo ""
    echo "  JBoss Starting..."
    %JBOSS_DIR%\bin\run.bat endlocal

【问题讨论】:

  • 对于if [ "x%PROJECT_DIR%" = "x" ]; then 试试看What is the proper way to test if variable is empty in a batch...
  • 我投票结束这个问题,因为 Stack Overflow 不是代码重写服务。
  • 在 cmd 提示符下键入 help 以查看您可以使用的命令列表。要获得特定命令的帮助,您可以输入 help ifif /?

标签: windows shell batch-file command


【解决方案1】:

不幸的是,在这种情况下,您只需要尝试和测试,直到正确为止。

你走在正确的轨道上,我认为你在这里得到的任何建议都不会大大加快这个过程。

确定 sh 文件中的命令,在 google 上搜索 bat 等效语法,将其添加到新文件并进行测试。一旦您确定该部分在您的环境中按预期工作,请转到下一行。

由于这些文件“大部分”是线性的,从上到下阅读,这使得测试每一行变得相当容易。

【讨论】:

  • 好的,谢谢你的回答;)
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2014-01-19
  • 1970-01-01
  • 2019-05-10
  • 1970-01-01
  • 2015-11-23
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多