在shell脚本中运行命令

时间:2009-10-20 01:28:16

标签: linux shell command-line

我有一个shell脚本文件(run.sh),其中包含以下内容:

#!/bin/bash
%JAVA_HOME%/bin/java -jar umar.jar

当我尝试运行它(./run.sh)时,它给了我以下内容: umar / bin / run.sh:line 1:fg:没有工作控制

但是,如果我直接在shell上运行相同的命令,它就能完美运行。

脚本文件有什么问题?

由于

3 个答案:

答案 0 :(得分:9)

%foo%不是您在bourne / BASH shell脚本中执行命令替换的方式。我假设你是从Windows命令行运行它,这就是为什么它直接运行它的原因。尝试使用正确的bourne语法:

${JAVA_HOME}/bin/java -jar umar.jar

答案 1 :(得分:2)

尝试启用监控模式

set -m

答案 2 :(得分:2)

%JAVA_HOME%将替换Windows环境变量,并且适用于.bat文件。

尝试以下shell脚本,该脚本应该适用于大多数类UNIX系统。

#!/bin/bash
$JAVA_HOME/bin/java -jar umar.jar