我被告知需要将以下.sh文件转换为.bat文件。我完全不知道怎么做,有人能给我一些提示吗?这是一个简短的代码。这是:
#!/bin/bash
#enables execution from another directory
#p=/path/to/PDFAnalyser
p=.
java -cp $p/bin ;$p/../pdfXtk-Extras/jar/pdfxtk-extras.jar ;$p/../pdfXtk-GUI/jar/pdfxtk-gui.jar ;$p/../pdfXtk/jar/pdfxtk-backend.jar ;$p/../pdfXtk/lib/commons-collections-3.1.jar ;$p/../pdfXtk/lib/commons-logging.jar ;$p/../pdfXtk/lib/fontbox-1.1.0.jar ;$p/../pdfXtk/lib/jai_codec.jar ;$p/../pdfXtk/lib/jai_core.jar ;$p/../pdfXtk/lib/jai_imageio.jar ;$p/../pdfXtk/lib/log4j-1.2.14.jar ;$p/../pdfXtk/lib/pdfbox-1.1.0.jar ;$p/../TouchGraph-Modified/jar/touchgraph-modified.jar ;$p/../TouchGraph-Modified/lib/TGWikiBrowser.jar ;$p/../pdfXtk/lib/xercesImpl.jar ;$p/../pdfXtk-Extras/lib/JavaOCR.jar at.ac.tuwien.dbai.pdfwrap.ProcessFile "$@"
答案 0 :(得分:4)
你的意思是Windows批处理文件,对吗?如果是这样,您应该在问题中指明。
我没有完整的答案,但我可以提供一些语法提示。
p=.
应更改为set p=.
。
$p
应更改为%p%
。
要在一行上执行多个命令,请将它们与&
而不是;
分开(或者,更好的是,每行只写一个命令)。
Windows使用\
而不是/
作为目录分隔符。
如果文件存在,文件可能会位于不同的位置。这假设您从类Unix系统中获取.sh
文件并为Windows系统创建.bat
文件。如果它们都是同一个系统(可能是因为你使用的是Cygwin),你也应该提到它。
将shell脚本转换为批处理文件没有直接的方法。他们将在不同的系统上运行。如果您不知道该怎么做,最好的办法就是找到一个人。
答案 1 :(得分:1)
更多提示:
以#
开头的行是注释。在批处理文件中使用rem
。
批处理文件的所有命令行参数%@
的标记必须替换为%*
。