在前端单独执行命令,执行成功
/usr/java/jdk1.8.0_211/bin/java -XX:+HeapDumpOnOutOfMemoryError -jar ./{*.jar,*.war}
将命令添加到环境变量中然后执行
# export cmd="/usr/java/jdk1.8.0_211/bin/java -XX:+HeapDumpOnOutOfMemoryError -jar ./{*.jar,*.war}"
# $cmd
Error: Unable to access jarfile ./{*.jar,*.war}
出现错误,我不知道出现这本错误的原因是什么,哪位大神有办法避免这个错误发生
使用单引号将文件名表达是引起来
# export cmd="/usr/java/jdk1.8.0_211/bin/java -XX:+HeapDumpOnOutOfMemoryError -jar './{*.jar,*.war}'"
# $cmd
Error: Unable to access jarfile './{*.jar,*.war}'
修改一下仅保留文件名
# export cmd="/usr/java/jdk1.8.0_211/bin/java -XX:+HeapDumpOnOutOfMemoryError -jar ./'{*.jar,*.war}'"
# $cmd
Error: Unable to access jarfile ./'{*.jar,*.war}'
添加转义符
# export cmd="/usr/java/jdk1.8.0_211/bin/java -XX:+HeapDumpOnOutOfMemoryError -jar ./\'{*.jar,*.war}\'"
# $cmd
Error: Unable to access jarfile ./\'{*.jar,*.war}\'
求问题原因和解决办法
set -x
看一下执行的命令