精华内容
下载资源
问答
  • Linux Shell 调用jar包与参数传递

    万次阅读 2018-01-05 13:37:11
    一、Shell调用jar包并传参的方式 # jar包路径 JAR_PATH=home/bin/test.jar # 要传递的参数 PARAM="1" # 调用jar包 java -jar $JAR_PATH$PARAM 或者直接 java -jarhome/bin/test.jar"1" "1" 将传递到jar包...

    一、Shell中调用jar包并传参的方式

    # jar包路径
    
    JAR_PATH=home/bin/test.jar
    
    # 要传递的参数
    
    PARAM="1"
    
    # 调用jar包
    
    java -jar $JAR_PATH $PARAM
    
    # 或者直接 java -jar home/bin/test.jar "1"

    "1" 将传递到jar包主程序的main方法中的参数列表第一位,如果有两个参数,怎么在后面 空格 +参数,例如:

     java -jar home/bin/test.jar "1" "2"

    如果调用jar包成功,怎么和Shell正常结束程序一样,返回0,可以用$?进行判断:

    if [ $? -ne 0 ]; then
    echo "=====调用失败 =====" 
    exit 1
    fi

    二、如何在调用jar包成功后,获取java程序返回的参数

    有两种方式:

    1、grep,解释起来比较复杂,不推荐使用,想要的可以查阅相关资料,我这里走偷懒的方式,从java代码入手:通过jar包中主程序方法里面的的输出语句System.out.prinln("123"),如果主方法中调用了外部方法,方法中有输出语句,那么需要注意,都会被当做Shell当做参数接收,是不是简单高效。

    获取jar输入的参数的方式为:

    # 用变量接收参数
    
    VAR=$(java -jar $JAR_PATH $PARAM)
    
    # 输出返回值
    
    echo $VAR

    完整实例:

    #!/bin/sh
    
    # jar包路径
    JAR_PATH=home/bin/test.jar
    
    # 要传递的参数
    PARAM="1"
    
    # 调用jar包传参并接收返回值
    VAR=$(java -jar $JAR_PATH $PARAM)
    
    # 判断调用是否成功
    if [ $? -ne 0 ]; then
    		echo "=====调用失败 =====" 
    		exit 1
    fi
    
    # 成功获得返回值
    echo $VAR
    
    exit 0

    三、补充

    因为程序执行完毕,正常退出返回0,非0的返回都是非正常退出。所以java代码也可以这么写。

    public class Test {
        public static void main(String[] args) {
            System.exit(4);
        }
    }

     

    展开全文
  • Linux Shell 调用Java class文件实例

    千次阅读 2018-01-30 11:09:26
    # shell调用class文件必须在classes目录下 cd $GWOS_HOME/classes # 要调用的class(包名.类名)不需要带后缀名 JAVA_FILE=com.tang.Test # 要传递的参数(和调用jar一样,通过main方法的String [] args 参数接收) ...
    #!/bin/sh
    #jdk安装根目录
    JAVA_HOME=/usr/lib/jvm/java
    # classes的上级目录
    GWOS_HOME=/home/user/project/ttd/test-pro
    # 第三包jar包存放位置,指定的log4j文件位置
    CLASSPATH=.:/home/user/project/ttd/test-pro/lib/*:/home/user/project/ttd/test-pro/logs
    
    # 测试是否可用
    RUN_CNT=`ps -ef | grep $JAVA_HOME/bin/java | grep $GWOS_HOME/$JAVA_FILE  | grep -v grep | wc -l`
    
    if [ $RUN_CNT -gt 0 ]; then
    	exit 0
    fi
    
    # shell调用class文件必须在classes目录下
    cd $GWOS_HOME/classes
    
    # 要调用的class(包名.类名)不需要带后缀名
    JAVA_FILE=com.tang.Test
    # 要传递的参数(和调用jar一样,通过main方法的String [] args 参数接收)
    PARAM_1=1
    PARAM_2=2
    
    # 调用并传参最终接收返回值
    RESULT=$($JAVA_HOME/bin/java -Xmx1524m -cp $CLASSPATH $JAVA_FILE $PARAM_1 $PARAM_2)
    
    echo "$RESULT"

    展开全文
  • linux shell 调用存储过程

    千次阅读 2013-05-28 10:53:21
    #!/bin/sh DB_USER="root" DB_PASS="123456" DB_NAME="igames" DB_TABLE="table" DATE=`date +%Y_%m_%d` BIN_DIR="/IGames/server/mysql/bin" BCK_DIR="/home/whl" ...DELETESQL_EAT="DELETE FROM TB_BACK_EAT whe
    #!/bin/sh
    DB_USER="root" 
    DB_PASS="123456"
    DB_NAME="igames"
    DB_TABLE="table"
    
    DATE=`date +%Y_%m_%d`
    BIN_DIR="/IGames/server/mysql/bin"
    BCK_DIR="/home/whl" 
    
    DELETESQL_EAT="DELETE FROM  TB_BACK_EAT where createTime <SUBDATE(DATE_FORMAT(NOW(),'%Y-%m-%d 00:00:00'),INTERVAL 70 DAY)"
    DELETESQL_BET="DELETE FROM  TB_BACK_BET where createTime <SUBDATE(DATE_FORMAT(NOW(),'%Y-%m-%d 00:00:00'),INTERVAL 70 DAY)"
    
    ${BIN_DIR}/mysql -u${DB_USER} -p${DB_PASS} ${DB_NAME}  -e "call SP_BACK_BAK()"

    展开全文
  • linux shell 调用 oracle 存储过程

    千次阅读 2010-06-09 16:48:00
    if [ $# -ne 1 ] then echo "day" exit -1 fi ...tmpfilename="common.${1}`date +%s`" ...sql="create or replace view v_dm_sosoad_common as ... select * from ( select * from t_dm_sosoad_common where ...

     

    将该脚本加到crontab即可

    展开全文
  • QT下实现对Linux Shell调用的几种方法

    千次阅读 2015-05-31 23:58:01
    其中使用方法就在于对QProcess 的调用如 mkdir TEST QProcess *proc = new QProcess; proc->addArgument("mkdir"); proc->addArgument("TEST"); if(proc->start()) { cout<<...
  • 有时web服务器脚本需要调用linux shell
  • linux shell历史命令调用

    千次阅读 2012-06-26 18:24:28
    linux shell提供了历史命令记录功能,通过对历史命令的调用,我们可以在shell提示符下节约大量的时间和命令输入。  linux系统Shell历史命令默认保存在用户主目录下的".bash_history"文件中。当然,我们也可以通过...
  • Windows bat 调用Linux shell命令

    千次阅读 2018-09-26 17:41:00
    Windows使用Linux shell命令 众所周知,Linux下的与windows的cmd不是一个量级的东西。对于使用惯了Linux,MacOS的经常切换到cmd会抓狂。但是偶尔项目下又必须实现一些bat脚本。特别是在持续集成CI/CD部署时。 那么用...
  • LINUX shell 下面调用脚本的3种方式

    千次阅读 2019-02-17 11:06:25
    LINUX下, 通过脚本执行一些命令, 通常需要执行好几个脚本共同完成任务, 这里的调用有3种方式: fork方式 这是最常用的方式, 直接通过: /path/xx.sh 就可以啦。 task.sh: #!/bin/shell /export/home/...
  • Linux/Unix shell 调用 PL/SQL

    万次阅读 2013-01-30 16:06:16
    Linux/Unix 下除了调用SQL之外,调用PL/SQL也是DBA经常碰到的情形,下面主要通过一些示例给出如何在shell下面来调用pl/sql。 其它相关的参考: Linux/Unix shell 脚本中调用SQL,RMAN脚本 Linux/Unix shell sql ...
  • linux shell函数定义和调用

    千次阅读 2016-08-10 10:33:29
    说起函数调用,相信大家也不会陌生,然而对于初学Shell的我来说,Shell中函数调用方式却有点让我不太习惯,自己也走了不少的弯路,因为传递参数时出了一个很“自然”的错误,也让我吃了不少的苦头,所以总结一下...
  • Linux ShellShell中的函数调用

    千次阅读 2017-05-03 17:40:14
    说起函数调用,相信大家也不会陌生,然而对于初学Shell的我来说,Shell中函数调用方式却有点让我不太习惯,自己也走了不少的弯路,因为传递参数时出了一个很“自然”的错误,也让我吃了不少的苦头,所以总结一下...
  • LinuxShell调用redis客户端访问集群

    千次阅读 2018-08-22 19:50:32
    shell下执行REDIS_HOME/redis-cli -h xx -p xx -c get key &gt; 1.txt  3.问题 由于Redis集群涉及到多个节点,而我们查询的key所属的节点是不固定的,有时候即使key对应的 value存在,但是这...
  • shell调用其他shell脚本中的函数 shell调用其他shell脚本中的函数 可以在一个shell脚本中定义函数,然后在另一个shell脚本中这个函数。使用的时候需要使用source命令(有的时候也用点操作符)。举例如下,首先...
  • 一、Shell函数定义格式 shell函数定义格式,各部分说明如下: [ function ]等中括号括起来部分----表示可选(即可有可无) your_function_name部分----为函数名 your_shell_commands部分----为函数代码;shell一般以...
  • jsp 调用linux shell

    千次阅读 2010-11-30 16:00:00
    <title>shell String cmds = "monitor.sh"; try {  Process process;  process = Runtime.getRuntime().exec("sh /opt/wzx/monitor.sh");  InputStreamReader ir...
  • 温馨提示:这里的引号是tab键上面的引号 #!/bin/sh py=`python XXX.py` echo $py
  • Linux环境下用SHELL调用kettle的ETL。 每次调用ETL都得有一个等待时间,等待kettle启动(7S), 这个怎么解决? 能不能使KETTLE在Linux环境下先启动好了?(这样在执行shell的过程中就少掉了等待启动kettle的时间...
  • Python(4) 调用linux shell command

    千次阅读 2013-03-18 10:57:49
    Python可以通过如下方式调用linux shell command import subprocess subprocess.call(["ls","-alh"]) 注意这里并非真正调用shell,而是python实现了类似shell的一些操作,另外送进来的参数要以list的形式,但是...
  • 最近一个项目需要写一个batch定时读取文件往数据库里插入记录,第一...先从shell如何调用java说起。 建立如下目录结构 batch 根目录 ├── bin shell放置目录(如果直接放java class也放这里) │ ├── 1.sh │ ├─
  • parseline (cmdline,argv); //将用户输入的CMDLINE 进行处理,分开命令行和参数i f (argv[0] =...//含有数据if((pid=myFork( ) ) ==0) {//子进程中调用if{execve(argv[0], argv , environ) exit(0);}}if (waitPid( p
  • 下面的代码用于在c++函数里面调用shell,并且执行命令,取回命令执行结果。
  • 以下只在BASH下测试在shell中定义函数的方法为function func_name(){函数体[return]} 函数体部分可以是任意的Shell命令,也可以调用其他的函数。return后可跟数值0-255作为函数的返回值;如果不加,将以最后一条...
  • 在运行shell脚本时候,有三种方式来调用外部的脚本,exec(exec script.sh)、source(source script.sh)、fork(./script.sh) 1、exec(exec /home/script.sh): 使用exec来调用脚本,被执行的脚本会继承当前...
  • 1、之前一直想在shell脚本中调用source文件,一直没找到方法, 2、前几天,随口问了下同事,茅塞顿开 3、下面是调用示例:   csh -c "source ${WORK_ROOT}/compile_cshrc;${WORK_ROOT}/src/make_all.sh release...
  • 1 php的代码为 system("/usr/local/xxx/xxxxx/xx.sh"); ?>2 通过浏览器访问之后。发现apache的log输出权限不足 3 找到shell的位置。cd /usr/local/xxx/xxxxx 4 chmod 777 xx.sh ...6 访问php页面,shell调用成功

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 204,768
精华内容 81,907
关键字:

linuxshell怎么调用

linux 订阅