本文通过Java代码调用Shell脚本并传入参数实现DB2数据库表导出到文件,代码如下: import java.io.File; import java.io.IOException; import java.io.InputStreamReader; import java.io.LineNumberReader; import java.util.HashMap; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import…
该Shell脚本用于实现将DB2数据库表导出到文件,将在另一篇博文<Java代码调用Shell脚本并传入参数实现DB2数据库表导出到文件>中通过Java代码实现调用该脚本并传入参数. #!/usr/bin/env sh DBSCHEMA=$ DBUSER=$ DBPASSWORD=$ TABLENAME=$ FILEPATH=$ DELIMITER=$ EXPORTLIMIT=$ SQLERR="NO ERROR MSG" #########################…
首先创建2个shell脚本文件,测试用. test_shell_no_para.sh 运行时,不需要传递参数 test_shell_2_para.sh 运行时,需要传递2个参数  test_shell_no_para.sh 内容如下:  test_shell_2_para.sh内容如下 注意含有变量的字符串要用 双引号 括起来 直接在命令行运行 test_shell_2_para.sh 执行结果如下: wangju@wangju-HP--G4:~$ sh test_shell_2_para.sh…
1:创建shell脚本 touch sqoop_options.sh chmod 777 sqoop_options.sh 编辑文件  特地将执行map的个数设置为变量  测试 可以java代码传参数 同时也验证sqoop的 options 属性支持这种写法 #!/bin/bash /opt/cdh-5.3.6/sqoop-1.4.5-cdh5.3.6/bin/sqoop --options-file /opt/cdh-5.3.6/sqoop-1.4.5-cdh5.3.6/sqoop-impor…
有些时候会碰到这样的场景:java的功能里面要嵌入一个功能点,这个功能是通过是shell脚本实现的.这种时候就需要Java对脚本调用的支持了. 测试环境 Ubuntu16.04 i3-6100,12GB Hello World 来看一个基本的例子 Process exec = Runtime.getRuntime().exec(new String[] { "uname" ,"-a"}); exec.waitFor(); BufferedReader reader…
1.创建maven项目 在pom文件中加入依赖:     2.在路径src/main/java下创建类,如类名shellclass                     3.      创建jmeter调用类,如jmtershell,完成jmetershell编写后导出成jar包.                 3.     将shelljmeter.jar放入jmeter安装路径\lib\ext目录下:将依赖的maven包ganymed-ssh2-210-huson-1.jar放入jmet…
写一个 程序名为    test.sh    可带参数为 start 和 stop 执行  test.sh start执行  start 内容的代码 执行 test.sh stop 执行 stop 内容的代码 #!/bin/bashif [ $1 == "start" ]  then     echo "do start"  command groups  elif [ $1 == "stop" ]  then  echo "do st…
ts.sh #!/bin/bash echo $# 输出 [root@redhat6 ~]# ./ts.sh para1 [root@redhat6 ~]# ./ts.sh para1 para2 [root@redhat6 ~]# ./ts.sh para1 para2 para3 [root@redhat6 ~]# ./ts.sh para1 para2 para3 para4 [root@redhat6 ~]# ./ts.sh para1 para2 para3 para4 para5 参…
这一年的项目中,有大量的场景需要Java 进程调用 Linux的bash shell 脚本实现相关功能. 从之前的项目中拷贝的相关模块和网上的例子来看,有个别的“陷阱”造成调用shell 脚本在某些特殊的场景下,有一些奇奇怪怪的bug. 大家且听我一一道来. 先看看网上搜索到的例子: package someTest; import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamRead…
最近遇到了一个问题,就是python代码调用shell脚本时,发现输入输出的文件,总是和自己预想的有偏差,但是单独在linux下执行命令的时候,却没有错误.后来发现是相对路径的问题,因为执行python文件的时候,会有一个工作目录,而执行shell脚本的时候,又会有一个工作目录,这样就很容易混淆.最好的办法:在执行shell脚本时,将目录切换到shell脚本下: cmd = '/home/usr/asdasd/' os.system(cmd) 这样问题就解决了.…