运行 来自 shell 脚本的 ant 命令
Run ant command from shell script
我正在编写一个脚本来自动编译 java 项目,并使用 ant 进行相同的编译。当我 运行 ant 命令直接在 bash shell 中时,它会正确构建项目。但是,如果我 运行 来自 shell 脚本的完全相同的命令,我会收到以下错误:
./build.sh: line 21: Apache: command not found
我的 build.sh 文件中的第 21 行是:
`ant clean build -v -buildfile $BUILDFILE`
其中 $BUILDFILE=auto_build.xml
.
我还在 .bashrc 中添加了 ant bin 文件夹的路径
$ANT_HOME
的值为 /usr/share/ant
ant -version
给我 Apache Ant(TM) version 1.9.3 compiled on April 8 2014
(如果添加到 shell 脚本,此命令也不起作用)
我怀疑问题是由于命令周围的反引号引起的。尝试替换
`ant clean build -v -buildfile $BUILDFILE`
和
ant clean build -v -buildfile $BUILDFILE
反引号表示 bash 解释器应该将 ant
命令的 output 作为一个命令单独执行。
见https://unix.stackexchange.com/questions/27428/what-does-backquote-backtick-mean-in-bash。
我正在编写一个脚本来自动编译 java 项目,并使用 ant 进行相同的编译。当我 运行 ant 命令直接在 bash shell 中时,它会正确构建项目。但是,如果我 运行 来自 shell 脚本的完全相同的命令,我会收到以下错误:
./build.sh: line 21: Apache: command not found
我的 build.sh 文件中的第 21 行是:
`ant clean build -v -buildfile $BUILDFILE`
其中 $BUILDFILE=auto_build.xml
.
我还在 .bashrc 中添加了 ant bin 文件夹的路径
$ANT_HOME
的值为 /usr/share/ant
ant -version
给我 Apache Ant(TM) version 1.9.3 compiled on April 8 2014
(如果添加到 shell 脚本,此命令也不起作用)
我怀疑问题是由于命令周围的反引号引起的。尝试替换
`ant clean build -v -buildfile $BUILDFILE`
和
ant clean build -v -buildfile $BUILDFILE
反引号表示 bash 解释器应该将 ant
命令的 output 作为一个命令单独执行。
见https://unix.stackexchange.com/questions/27428/what-does-backquote-backtick-mean-in-bash。