java程序中开启线程执行.sh脚本(启动一个jar),报command not found,但是控制台直接执行.sh是可以执行的 [问题点数:100分]

Bbs1
本版专家分:0
结帖率 0%
Bbs6
本版专家分:9969
Blank
金牌 2018年7月 总版技术专家分月排行榜第一
2018年6月 总版技术专家分月排行榜第一
Blank
红花 2018年9月 Java大版内专家分月排行榜第一
2018年8月 Java大版内专家分月排行榜第一
2018年7月 Java大版内专家分月排行榜第一
2018年6月 Java大版内专家分月排行榜第一
Bbs7
本版专家分:11726
版主
Blank
榜眼 2009年 总版技术专家分年内排行榜第二
2005年 总版技术专家分年内排行榜第二
Blank
银牌 2009年7月 总版技术专家分月排行榜第二
2009年3月 总版技术专家分月排行榜第二
2009年1月 总版技术专家分月排行榜第二
2005年7月 总版技术专家分月排行榜第二
2005年5月 总版技术专家分月排行榜第二
2005年3月 总版技术专家分月排行榜第二
Blank
优秀版主 优秀小版主
2015年8月优秀小版主
2015年9月优秀小版主
2015年5月优秀小版主
2015年2月论坛优秀版主
Blank
铜牌 2009年6月 总版技术专家分月排行榜第三
2009年2月 总版技术专家分月排行榜第三
2005年4月 总版技术专家分月排行榜第三
2005年1月 总版技术专家分月排行榜第三
Bbs1
本版专家分:0
其他相关推荐
shell脚本运行java程序
      在linux上部署项目的时候,我们往往通过一段shell来启动程序,甚至是通过crontab定时任务来定时的调用java程序但是很奇怪的一个问题就是,比如我写了一个如下的shell脚本: #!/bin/sh # ----------------------------------------------------------------------------- # Start script for the CMGP BOSSCONTROL #
自动运行和关闭jar程序的sh脚本
前段时间研究了下如何把java程序打包成jar在centos上运行,但是jar文件多了之后,启动和关闭都很麻烦,于是考虑写个脚本来搞定它!大概的思路是:先得到运行程序的PID,然后kill掉该程序,隔一段时间后再启动该程序.脚本代码如下: #!/bin/sh#!restartjar.sh ps -ef| grep test1.jar|grep -v grep|awk {
【Shell】 Linux下启动java程序的通用脚本sh
之前看到的脚本,现在找不到文章的出处,对作者标识感谢! #!/bin/sh #该脚本为Linux下启动java程序的通用脚本。即可以作为开机自启动service脚本被调用, #也可以作为启动java程序的独立脚本来使用。 # #Author: tudaxia.com, Date: 2011/6/7 # #警告!!!:该脚本stop部分使用系统kill命令来强制终止指定的java程序进程。
运行.sh文件提示‘\r’ command not found
基于 DOS/Windows 的文件在每一行末尾有一个 CR(回车)和 LF(换行),而 UNIX 文本只有一个换行,即win每行结尾为\r\n,而linux只有一个\n。如果win下的文档上传到linux,每行的结尾都会出现一个^M(^M是ctrl+v,ctrl+m) ,然后提示“‘\r’ command not found”。解决办法:如果是单个文档的话,可以用vim打开,执行 :%s/^M/...
Linux shell脚本执行提示错误[[: not found
脚本中实现在一个字符串中查找一个子串wifistate=$(iwconfig wlan0)if [[ "$wifistate" =~ "unassociated" ]];then echo no elif [[ "$wifistate" =~ "associated" ]];then echo yes else echo hello fi以上的程序在命令行中一行一
shell 脚本启动jar程序
Linux下启动jar包程序,直接上步骤: 1、首先,maven项目打成一个jar包,同时使用dependency:copy-dependencies命令导出依赖的jar包,把导出的包和项目jar包都放进lib文件夹里 2、编写shell脚本: #!/bin/bash export JAVA_HOME=/home/program/java/jdk1.8.0_60 #
Linux下通过sh脚本执行jar文件
java类: public class HelloWorld { public static void main(String[] args) { System.out.println("hello world !"); } } sh脚本: #!/bin/ksh echo "--------helloWorld------->>" JAVA_HOME="/usr/jdk
Linux下启动java程序的通用脚本sh
在网上找到一个挺好的通用shell脚本。 只需要修改一些配置变量,就可以用来做起动脚本了。 并且除了能起动、还支持关闭、重启、查看是否正在运行的功能。 #!/bin/sh #该脚本为Linux下启动java程序的通用脚本。即可以作为开机自启动service脚本被调用, #也可以作为启动java程序的独立脚本来使用。 # # #警告!!!:该脚本
为什么直接执行shell脚本可以,但crontab下执行错误
刚才写好了一个shell脚本,能够正常运行,但是加入crontab内总是给我报错,说我ifconfig命令找不到。查看邮件看到crontab 也有自己的环境X-Cron-Env: < XDG_SESSION_ID=67 > X-Cron-Env: < XDG_RUNTIME_DIR=/run/user/1000 > X-Cron-Env: < LANG=en_US.UTF-8 > X-Cron
linux下通过.sh文件启动java程序
http://blog.csdn.net/cnmcxiari/article/details/6673081 linux下通过.sh文件启动java程序: 首先把java程序打成jar包,指定好主类(入口) sh文件如下 #!/bin/sh java -Xbootclasspath/a:log4j.jar:ojdbc.jar:  -jar domain.jar 执行: ./r
使用sh执行bash脚本的奇怪问题
在同一个目录下有两个脚本,a.sh和b.sh脚本内容如下: a.sh:echo "test for a" source b.shb.sh:echo "test for b"使用bash a.sh 返回正确结果。 而使用sh a.sh返回结果如下: test for a a.sh: line 2: source: b.sh: file not found 明显脚本运行过程中,没有找到文件b
linux下执行脚本,提示Command not found解决办法
遇上了这个坑,搞了好久没搞定,参考了前辈的文章,终于搞好了,分享如下 原文地址:http://www.cnblogs.com/GordonWorld/archive/2012/03/19/2406225.html Linux下执行.sh脚本错误:bin/sh^M: bad interpreter: No such file or directory       原因是.sh脚本
jenkins 执行sh脚本 没携带环境变量,报错command not founds问题
有个问题困扰很久:    使用jenkins 执行sh脚本或者 直接Execute shell编写脚本时, 脚本中很多命令无法执行, 例如 用npm安装软件,  yarn 编写web工程  都会报错command not found 这是因为没有带上系统的环境变量。 只有在Execute shell中第一行加上这句话:#!/bin/bash -ilex ~~~~~~~~参考如下:
【java】Linux使用nohup命令启动sh shell 脚本java程序无限循环启动问题。解决方案
一·背景 项目使用spring boot 搭建。在Linux操作系统使用nohup命令启动sh shell 脚本,程序无限循环启动,只要是 让程序在后台启动 都会无限循环启动(程序本来应该启动完毕的,但是从日志上看程序又再次启动了一遍,无限循环,而且程序也无法正常访问) 二·解决方案 不使用sh文件 启动。 把项目打成war包形式,使用java -jar 方式启动项目。 nohup ja
linux下shell脚本启动java程序jar
SERVER=/home/lytz/zhengzy/myapp_email cd $SERVERstart(){ echo “start project…” JAVA_HOME=/usr/java/jdk1.7.0_79 export JAVA_HOME PATH=JAVAHOME/bin:.:JAVA_HOME/bin:.:PATH export
linux 下source、sh、bash、./执行脚本的区别
点击打开链接 1、source命令用法:   source  FileName   作用:在当前bash环境下读取并执行FileName中的命令。该filename文件可以无"执行权限"   注:该命令通常用命令“.”来替代。   如:source .bash_profile     . .bash_profile两者等效。   source(或点)命
Linux下shell脚本启动jar
Linux下shell脚本启动jar包     不说废话,直接上图。         这是整个目录结构,其中bin里面是启动脚本(st2.sh),lib里面是你需要启动的猪jar包和依赖的其他jar包,log里面是打印的日志。直接脚本。     上面是完整的脚本代码,原理不多说,百度Google都可以。需要注意的地方是以下几点: 第4行的MAIN_CLASS="l
shell 运行 jar 文件脚本
linux 下运行 java jar 的 shell  脚本 #!/bin/sh basepath=$(cd `dirname $0`; pwd) cd $basepath cd ../ PWD=`pwd` echo $PWD for i in lib/*;     do CLASSPATH=$PWD/$i:"$CLASSPATH"; done
Mac下如何建立双击可执行脚本
第一步: 新建一个空的command文件,比如 build.command 第二步: 文件的第一行写 #!/bin/bash 第三步:下面正常写平常在终端内写的代码,比如 cd some_dir python script.py 第四步:打开终端,给command文件增加权限 chmod +x path/to/build.command 完成 此时再双击command文...
Linux 下编写.sh文件运行JAR下的Class
#!/bin/sh #bash文件头 APP_HOME=/opt/CrxToMongodb #目录是/opt/CrxToMongodb CLASSPATH=$APP_HOME #bin目录当然是包含jar包的目录啦 for i in "$APP_HOME"/lib/*.jar #引进所有的jar包,这里用的循环,当然也...
运行jar的bat和.sh文件
里边就一个bat文件和.sh文件 开发的普通java程序从ide导出jar,编写bat在windows下运行,编写sh在linux下运行
linux下怎么通过.sh文件启动java程序
linux下通过.sh文件启动java程序的 步骤: 第一步:在linux系统上安装JDK,并配置环境变量。可以参考:http://blog.csdn.net/u013713294/article/details/52514608 第二步:把java程序打成jar包。可以参考:http://jingyan.baidu.com/article/219f4bf7d0ef87de442d
Linux执行shell脚本提示文件找不到问题解决办法
当在Linux系统下执行本来存在的shell脚本文件,但是执行时就是提示你文件不存在。此时一般原因就是你shell脚本在编写时的系统跟你的执行脚本的系统不一致,比如你在window系统编写的脚本,当拷贝到Linux系统时就会遇见此问题。原因是在windows下编辑的.sh文件的格式为dos格式,而linux只能执行格式为unix格式的脚本。因为在dos/window下按一次回车键实际上输入的是“...
Mac执行shell脚本提示command not found的一种解决方案
本人在学习使用Mac OS的过程中,想写一个简单的安装Android apk的脚本,发现根据网上教程走完之后,总会提示一个错误。但是我检查了很多遍权限和Android包括adb环境变量配置,依然没有找到原因,后来无意间用xcode打开了一次sh脚本,发现里面时另外一种编码格式下的内容。突然想到了,我sh脚本文件是用Mac自带的文本编辑器创建的,可能是编码的问题。重新再xcode里面编辑了之后,一切
在mac上创建鼠标双击可执行shell脚本
总是觉得mac权限管理好严格,要创建向在window上执行bat那样的脚本需要如下操作 首先创建测试脚本 touch clickexe.sh open -e clickexe.sh脚本中输入内容 echo "hello world" 再执行命令 chmod +x clickexe.sh 然后在取景器右键单击您的文件,并选择“打开方式”,然后选择“其他...” 
sh + 脚本名的方式来执行
sh + 脚本名的方式来执行
linux 通过sh脚本执行java程序-(1)
应用存放路径及依赖管理 可执行脚本编写 #!/bin/sh##java env export JAVA_HOME=/usr/local/java/jdk export JRE_HOME=$JAVA_HOME/jre## service name APP_NAME=userSERVICE_DIR=/root/wusc/edu/service/$APP_NAME SERVICE_NAME=edu-ser
使用shell脚本启动java后台线程
启动脚本如下(文件名称run.sh) #!/bin/sh #===============此处的APP_MAINCLASS 是main 方法所在类 APP_MAINCLASS=com.iflytek.sgy.sjxj.node.main.NodeStartup JMS_OPTS="-Xms256m -Xmx1024m" #==============此处的debug_opts 是设置java 远
linux 启动或停止jar shell脚本
shell脚本 # jar启动shell命令 #startup.sh java -jar project.jar & # 注意:必须有&让其后台执行,否则没有pid生成 echo $! > project.pid # 将jar启动对应的pid写入文件中,为停止时提供pid # jar停止shell命令 #shutdown.sh
直接执行脚本放到crontab中就不执行
iamlaosong文 前面文章曾提到过的定时检测压缩包并完成解压、修改文件名和导入到数据库的脚本(检测压缩包并处理的Linux脚本(解压、批量修改文件名、导入)),后来发现放到crontab中就无法执行了,费了很大劲,一步步找问题,首先是脚本肯定执行了,后来在脚本中增加一些其他命令如pwd、echo等都执行了,最后发现是导入程序没有执行,其实也不是没有执行,而是执行后退出来了。 下面是找问题
crontab执行expdp命令无效
redhat系统使用oracle用户写了如下脚本,导出oracle数据库,按照日期命名 #!/bin/sh BACKUPTIME=$(date +%Y%m%d) expdp cem/cem@orcl directory=DATA_PUMP_DIR schemas=cem_sx dumpfile=cemuat-$BACKUPTIME.dmp logfile=cemuat-$BACKUPTIM
shell脚本调用多个jar
java -Dfile.encoding=utf8 -classpath .:lib/commons-cli-1.2.jar:lib/excel2csv.jar:lib/poi-3.11-20141221.jar:lib/poi-ooxml-3.11-20141221.jar:lib/org.json-20120521.jar: excel.ToCSV "$xfile" ../../client/
centos 下用shell脚本启动jar
应用场景:有的时候服务器需要重启 或者 jar 版本更新,需要重新启动,通过shell脚本可自动执行的特性,来提升工作效率处理方案: 1、编写shell脚本:如:#!/bin/bash # 必须 #add for chkconfig # 必须 #chkconfig: 2345 70 30 # 必须 #description:the shell
linux 使用sh启动jar包 编写三个脚本
run.sh==start.sh==stop.sh run.sh可传值给start.sh或stop.sh 比如a.jar,b.jar只需编辑run.sh即可启动 start.sh nohup java -jar a.jar/b.jar &(可传值) stop.sh PID=$(ps -ef | grep a.jar | grep -v grep | awk '{ print $2 }') if [
Linux下执行shell脚本,出现错误 $'\r':command not found的解决方案
这个错误是由于Windows系统和Linux系统的不同编码造成的。Windows下的回车是\r\n,而Linux下的回车是\n,所以用shell远程编写的脚本中的回车不被Linux系统识别,但使用vim编辑的时候还看不到\r。 解决方法:用vim编辑脚本文件时加上-b,即vim -b filename,这样打开的文件是&quot;Binary mode&quot;,可以看到多出来的东西,显示的是^M,删掉保存运行就行...
Jenkins中通过execute shell无法启动进程-解决方案合集
一、问题描述jenkins使用publish over ssh,执行shell,没报错,日志输出成功23:43:13 SSH: EXEC: completed after 10,225 ms 23:43:13 SSH: Disconnecting configuration [swarm2] ... 23:43:13 SSH: Transferred 1 file(s) 23:43:13 Fini...
关于shell unix下,直接执行shell与sh 执行 或加 . 脚本 的区别及含义
今天遭遇到一个问题写了一小段脚本想增加一个环境变量atest.sh代码如下#!/bin/bash dir=${PWD} echo "export PATH=/$PATH:${dir}" >> ~/.bash_profile export PATH=$PATH:${dir} 但是sh atest.sh 怎么执行环境变量都无法生效通过$echo PATH
关于脚本中使用nohup启动项目的问题
1、在Jenkins中配置了sh /home/dubbo/service/bin/start.sh;使用以下脚本#!/usr/bin/env bash ...省略... nohup java $JAVA_OPTS $JAVA_MEM_OPTS $JAVA_DEBUG_OPTS $JAVA_JMX_OPTS -classpath $CONF_DIR:$LIB_JARS:$WEBLOGIC_CLIEN
记录运行sh脚本会出现多个进程
a.sh(开头#!/bin/sh)#!/bin/sh ./do b.sh #...下面还有很多b.sh(没有#!/bin/sh)echo 123456 #...此处很多代码(1)a.sh 调用b.sh ./a.sh通过 ps -ef | grep a.sh 发现会有3个进程(2)单独执行 b.sh./b.sh通过ps -ef | grep b.sh 找不到对应的进程(3)现在 把b.sh  开头加...
sh执行shell脚本出现语法错误
今天调试一个脚本,因为我都是用./的方式直接运行脚本的,所以没有发现任何问题,但是当我用如下命令打印调试信息的时候就会发现各种问题:sh -x sample.sh 下面给出典型的sample.sh 1.test语句 2.function都报错 shell中打印出当前使用的shell
Android init.rc如何启动service去执行sh脚本
在Android开发中经常会遇到,在应用层想去执行一个脚本来完成某些底层相关的操作,但在应用层又没有root权限。 所以,老大给出一种方法完美解决此问题,又把上层和底层进行了隔离,非常好的策略。 1、在需要执行脚本的时候,应用层去设置一个property,在init.rc中去监测此property的值,当监测到此property的值符合要求时,去start service,来执行我们的脚本文件
Linux下设置sh文件双击执行
经测试Debian和Ubuntu下可以用此方法设置sh文件双击执行
Linux(Ubuntu)下设置开机自启shell脚本执行Java程序jar
一、建立脚本文件: 二、设置权限 三、将脚本文件放到启动目录下 四、更新优先级 cd /etc/init.d sudo update-rc.d startm.sh defaults 90 至此,开机启动已经完成,我们可以通过reboot重启linux,来查看jar包是否已经启动成功。而且,在/etc/rc2.d、rc3.d、rc4.d、rc5.d文件夹中也可以看到我们的st...
linux下 sh调用java,执行class
本文主要介绍在linux下sh批处理文件调用java的方法。 shell编程的代码如下: #!/bin/bash #引入java环境变量 . /etc/profile #取得当前.sh文件所在的目录 DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )" #引入class所在的文件夹 classes=$DIR/classes #li
expct脚本执行,不报错,但是运行不过去。
   第一次写shell脚本#!/usr/bin/expect spawn ssh-keygen expect {         "Enter "{         send "\r"         exp_continue         }         "Enter "{          send "\r"         exp_continue         }        ...
dos2unix对shell脚本程序的解救
本文总结了平时工程实践中遇到的一些linux命令相关的问题,并给出解释。
linux shell脚本中打开另一个终端并在新终端中执行shell脚本
gnome-terminal -t "title-name" -x bash -c "sh ./run.sh;exec bash;" -t 为打开终端的标题,便于区分。 -x 后面的为要在打开的终端中执行脚本,根据需要自己修改就行了。 最后的exec bash;是让打开的终端在执行脚本后不关闭。
shell脚本名称直接执行sh脚本
在实际的操作中,不会有人真的把所有的脚本都加一遍到path中,而且,也不能每一次在别的目录中新增脚本,就增加一次到path路径中。所以,此时应该csh 修改/etc/passwd 把对应用户修改成/bin/csh 如果没有csh,需要安装 切到用户根目录,新增.cshrc文件,内容如下(以下是我的配置,可以根据实际情况修改): # @(#)cshrc 1.11 89/11/29 SMI #...
linux执行sh脚本报错的解决办法
在我们的最小化安装的linux下,执行sh脚本文件不生效,报错如下:     解决方法如下:     安装成功后再次执行执行成功!!!
liunx 脚本执行,中文乱码问题
JAVA页面乱码的问题: 需要定义默认的字符集,我的是UTF8,加载如下参数 #!/bin/sh LANG=en_US.UTF-8 export LANG .sh中添加JAVA环境变量 JAVA_HOME=/usr/local/java #该路径为JAVA安装路径 CLASSPATH=$JAVA_HOME/lib/dt.jar:$JAVA_HOME
redis 简单官方脚本安装方法(linux)
redis 简单官方脚本安装方法(linux) redis 简单官方脚本安装方法(linux), 其实也是非常简单的,安装的时候,我用一台刚刚安装好的虚拟机来模拟环境。现在我安装官方网站的最新版本 1.下载redis,现在最新版本是2.6.16 wget http://download.redis.io/releases/redis-2.6.16.tar.gz 2.
线程执行shell脚本
Linux下模拟多线程的并发并发shell脚本  分享一个在Linux下模拟多线程的并发脚本,使用这个脚本可以同时批量在定义数量的服务器上执行相关命令,比起普通for/while循环只能顺序一条一条执行的效率高非常多,在管理大批服务器时非常的实用。      以下脚本功能是通过scp(也可选rsync)向上千台服务器传更新包,脚本运行后同时在后台有50个scp进程向服务器传包。
hdfs 之编写shell脚本自动启动datanode (王金阳)
第一步:cd ~ 切换到root下输入指令 :touch my_hdfs_start .sh #新建文件夹vi  my_hdfs_start .sh进入 vi 编辑器 首航:#!/bin/bash注意:app是个自建的文件夹 是个变量  通过 脚本启动 namecode/app/hadoop-2.8.3/sbin/hadoop-daemon.sh start namecode我有1台namecod...
编译系统透视:图解编译原理
全书一共8章,具体内容和逻辑如下:第1章以一个C程序(先简单,后复杂)的运行时结构为依托,对程序编译的整体过程做了宏观讲述,让读者对编译有整体认识,这样更容易理解后面的内容。 第2~6章通过实际的程序案例、结合GCC的源代码,根据程序编译的顺序和流程,依次讲解了词法分析、语法分析、中间结构和目标代码的生成,遵循了由易到难的原则,先是通过简单程序讲解清楚原理,然后再通过复杂程序强化理解。第7章讲解了与编译器紧密关联的汇编器和链接器,能让读者对可执行程序的最终生成有一个完整的了解。第8章讲解了预处理,就编译器的执行顺序而言,预处理器的执行比较靠前,之所以放在最后讲,是因为它比较独立,在读者已经了解整个编译过程中之后再讲解,读者会更容易理解。
shell脚本调用jar
shell脚本调用jar包 test.sh 文件,shell脚本文件以sh结尾 #告诉系统解释脚本文件的位置,可写可不写(最好写),写/bin/sh的时候,source命令无法执行 #!/bin/bash   #指定需要执行jar包的位置 JAVA_HOME=/usr/local/java/jdk1.8.0_11 CLASSPATH=$JAVA_HOME/bin #遍历方法,获得制定
java程序执行shell脚本Demo
本文给出如何使用java程序执行shell 脚本的demo
linux中单独的test.sh可以执行,将test.sh加入cron定时任务却执行不成功(echo 导致)
问题:test.sh一个爬虫脚本……单独在终端运行 sh +x test.sh可以抓到数据,并保持在数据库;但是加入定时任务之后,只能抓到一条不全的数据……奇怪??!!!分析: 虽然只是抓到不全的数据,但肯定定时任务没问题,不是脚本权限问题 和测试环境代码比较了一下,完全一致,不是脚本代码的问题 但测试环境定时任务执行成功,可能是环境问题,比较了Php的执行时间等,完全一样 麻蛋,这是什么原因呢?
Ubuntu下双击sh执行文件无法执行
Ubuntu下双击sh执行文件无法执行 解决方案
【Docker应用】 docker中执行指定脚本(docker 下运行springboot应用)
【Docker应用】 docker中执行指定脚本 这里是执行spring boot的应用的实例:1. 制作执行sh脚本的镜像文件(模板) Dockfile FROM vertigomedia/ubuntu-jdk8 RUN touch /root/app_start.sh RUN echo "#!/bin/bash" &gt; /root/app_start.sh RUN echo "echo ...
Linux shell脚本执行方式:source、sh、bash、./执行脚本的区别
1、source命令用法:   source FileName   作用:在当前bash环境下读取并执行FileName中的命令。该filename文件可以无"执行权限"     注:该命令通常用命令“.”来替代。     如:source .bash_profile         . .bash_profile两者等效。     source(或点)命令通常
linux上Java后台执行SHELL脚本
一个SHELL脚本,运行时常驻内存,所以如果是在命令行下运行,命令会是像这样:  nohup /someurl/test.sh&  为了方便管理、启动,现在有一个JAVA前台程序,使用Runtime.getRuntime().exec()的方式,想启动或者中止这个SHELL脚本。  中止程序没有问题,取得PID后,用kill命令就可以结束这个进程了。  现在的问题是,如何
maven 生成可执行jar并使用shell脚本运行
创建maven项目,利用maven项目生成可执行jar,需要使用maven-assembly-plugin插件来完成,pom.xml文件配置如下 project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" x
linux新开screen后台跑脚本
转 :http://blog.sina.com.cn/s/blog_7b2d53f701018k0o.html 1.新开一个screen : [root@localhost ~]# screen 2.进入screen执行脚本: [root@localhost ~]# 省略... 3.脚本执行过程中可以关闭你的终端连接: [root@localhost ~]# exit 4.查看脚
举例说明source执行脚本sh执行脚本的区别
查看测试脚本 [root@test]# cat test.sh #!/bin/sh user='whoami' 向测试变量赋值 [root@test]# user='222' [root@test]# echo $user 222 给与执行权限 [root@test]# chmod +x test.sh 执行脚本测试变量 [root@test]# ./test.sh
java运行shell脚本(或命令),shell脚本(或命令)后台运行,关闭java程序不影响脚本运行
java程序调用shell命令时,有时需要shell命令后台运行,java程序关闭也不影响shell命令的运行。可以使用如下的方法实现:假设要运行的命令是command(这个命令可以是一条shell命令,也可以执行一个shell脚本),先创建一个run.sh,将要执行的命令写入run.sh中#!/bin/bash nohup command &amp;&gt;/dev/null 2&gt;&...
jenkins执行shell命令,有时会提示“Command not found”----处理方案
jenkins执行shell命令,有时会提示“Command not found”----处理方案
java调用并执行shell脚本以及问题总结
背景 我们在开发过程中,大部分是java开发, 而在文本处理过程中,主要就是脚本进行开发。 java开发的特点就是我们可以很早地进行TDDL, METAQ 等等地对接; 而脚本开发的特点就是在进行批处理的时候非常方便。 前阵子我遇到这么一个需求场景: 对抓取的数据进行打包, 后来又遇到我要通过脚本进行抓取,比如nodejs下基于phantomjs的casperjs爬虫。 解决方法
双击打开运行sh文件
转:http://forums.macrumors.com/showthread.php?t=213726 1.修改后缀sh变成command,如果不想显示后缀名,可以cmd+i,名称与扩展名下设置即可。 chmod +x ***.command. 2.也可以下载platypus,将sh转换成app即可。
执行shell文件的区别">使用sh命令与使用"./"执行shell文件的区别
1、sh  跟上SH脚本直接运行。 2、chmod 给SH脚本加上X权限,然后直接输入SH脚本文件名,就可以运行。 我原来一直是这两种方法,没有碰见过错误, 你的问题,可以脚本发出来,或把错误提示发来 sh  xxx 用 sh 这个shell  (sh一般指系统默认shell,比如 bash, ksh, Csh 等都有可能) 来解释和运行 xxx 这个脚本。xxx 文
linux下执行.sh文件时报错的一个可能原因
刚开始使用linux系统的朋友可能喜欢先在window系统下创建一个文件(例如test.txt),然后再上传到linux系统中;-----我就是不熟悉linux系统并且懒得搜索创建文件的命令,所有就这么干的!-----其实在linux系统下创建一个文件命令很简单:touch 文件名;==============================================但是windows系统下...
crontab 里无法执行expdp
crontab 造反 了不执行主人的命令
ubuntu 使用sh 无法执行脚本文件的解决方法
最近刚开始学习linux shell语言 看的是鸟哥的私房菜,里面有讲到执行shell脚本有两种方法: 1. 设置执行属性: chmod 755 file 执行(如果已经在当前目录) :    ./file 2. 使用:  sh file 执行 .但是在vmware里装的ubuntu 11.10却无法执行 #!/bin/bash declare -i s for (( i = 1; i
嵌入式 Shell脚本执行时出现declare: not found的解决方法
#../gcc-4.6.3/configure  --prefix=/usr/local/gcc-4.6.3  --enable-threads=posix --disable-checking  --enable--long-long --with-zlib-include=/usr/src/linux-2.6.32.12-0.7-obj/x86_64/default/include/confi
linux 能够手动执行脚本,放在crontab中无法执行
1. 如果是sh脚本直接脚本前面加上: source /etc/profile 2. 如果是python: source /etc/profile && python /mypath/myscript.py ... 原因:crontab 不能自动从用户profile文件中读取环境变量参数。具体解释 如果没有生效,可以重启crontab服务,/etc/init.d/crond res
Java程序定时执行shell脚本
第一次写博客,写的不好还请见谅。 之前在Linux环境中想定期执行某个脚本,第一反应就是将这个task加入到crontab里(crontab的知识点这里就不具体介绍了),当然,这种做法一般情况下是可行的。但是,当你发现,你没有编辑crontab权限,或者你所用的用户不在可执行crontab里面任务的列表时,怎么办呢? 我的解决方法是后台跑Java程序,利用Java程序定时执行shell脚本
linux crontab 无法执行shell脚本解决方法
crontab 创建了一定时任务,每分钟去执行一个shell脚本 */1 * * * * sh /home/test/start.sh ============================== start.sh : #!/bin/bash cd /home/test sh kill.sh java -jar test.jar ======================
shell脚本手动执行成功,定时任务调用失败的解决方法。
场景:写的shell脚本,在secureCRT 命令窗口执行没有问题,当添加定时任务执行shell脚本时出现如下中的某些问题。 1,出现找不着 命令如:java、db2等命令。 2,编码格式不对等,如java读取中文文本 读取后为问号? 。 原因:用户的环境变量在shell中没有起作用。 解决办法:在shell需重新加上环境变量如: export JAVA_HOME=/usr/java/
ubuntu终端下面用startup.sh脚本启动tomcat报错
一个错误,就是jre路径显示不对的我的解决办法是 打开tomcat的bin目录下面的setclasspath.sh,添加上,路径自己修改,添加在开头就行 一开始是这样的 #java安装目录 JAVA_HOME=/opt/java/jdk1.8.0_91 #jre安装目录 JRE_HOME=${JAVA_HOME}/jre可以正常显示jre路径了 第二个问题是logs下面的日志文件总
Linux 下shell启动Java Main函数脚本
#!/bin/sh #该脚本为Linux下启动java程序的通用脚本。即可以作为开机自启动service脚本被调用, #也可以作为启动java程序的独立脚本来使用。 # #Author: tudaxia.com, Date: 2011/6/7 # #警告!!!:该脚本stop部分使用系统kill命令来强制终止指定的java程序进程。 #在杀死进程前,未作任何条件检查。在某些情况下,如
crontab执行sh脚本和手动执行结果不一样问题解决
当使用crontab执行sh脚本时,发现存到数据库的数据丢失了非常多,困惑。。。于是gezhong
crontab不能成功执行shell脚本的可能原因
我们经常会需要使用crontab进行定时任务,但crontab不能成功执行脚本的情况还是很常见,总结起来,本人了解到的和自己遇到的可能原因主要有以下几个:     1. crond进程不存在,该进程是crontab的守护进程,它必须存在才能让crontab正常使用;     2. 系统时间不对;     3. 环境变量的问题:crontab执行脚本的时候不会读取用户的环境变量等配置,所以可能
Shell 学习笔记 -----运行Shell脚本的两种方法(一)
现有a.sh 文件 #!/bin/bash echo "Hello World!" 运行Shell脚本的两种方法 1.作为可执行程序 将上面的代码cd到相应目录: chmod +x ./a.sh ./a.sh注意:一定要写成./a.sh,而不是a.sh运行其它二进制的程序也一样,直接写 test.sh,linux 系统会去 PATH 里寻找有没有叫 test.sh 的,而只有 /
Jenkins执行shell脚本乱码解决办法
问题说明: Jenkins里直接执行shell脚本,会出现中文乱码的问题。但是单独执行shell脚本又是没问题。这个怎么办呢? 解决办法: 在shell脚本开始的时候加上命令: export LANG="en_US.UTF-8" 中文乱码的问题就解决了。 此问题是crontab执行shell脚本乱码是同一个问题。 问题原因:  此问题是因此执行定时任务时没有去获取系统的环境变
java执行脚本sh和./的区别
今天测试代码,用sh执行脚本没啥问题,结果用./执行就Exception了,查资料发现了这个问题,给脚本加上可执行权限就可以了。java执行脚本sh和./的区别如下:./需要执行权限,执行调用的是你开头一行定义的shell,不指定系统会调用默认shell程序sh不需要执行权限,sh是个软链接,它可能是一个任意的shell,通常默认是bash shell...
Linux 运行jar包怎么后台运行
需要写2个脚本:   创建一个后缀为sh的文件开始脚本 start.sh :   #!  /bin/sh #注意:必须有&amp;让其后台执行,否则没有pid生成   jar包路径为绝对路径 java -jar  /opt/java/wechat-0.0.1-SNAPSHOT.jar   &gt; /opt/temp.txt &amp;        # 将jar启动对应的pid写入文...
输出执行操作和打印日志的shell脚本
cat /mnt/log_function.sh #!/bin/bash #log function####log_correct函数打印正确的输出到日志文件 function log_correct () { DATE=`date “+%Y-%m-%d %H:%M:%S”` ####显示打印日志的时间 USER=$(whoami) ####那个用户在操作 echo “${DATE} $
Yii执行脚本
1、编码执行 &amp;lt;?php /** * Created by PhpStorm. * User: Administrator * Date: 2018/4/12 0012 * Time: 下午 5:43 */ /** * 示例代码 * Class TestCommand */ class TestCommand extends CConsoleCommand { ...
Linux Shell 调用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方法中的参数列表第一位,如果有两个参数,怎
在android程序中调用shell命令与脚本
最近做android的一个功能就是调用shell命令来进行一些系统级别的操作,比如说是关机开机之类的,现在总结一下具体的用法以及遇到的坑(基于我所用到的,没用到的我就不说了) (1) Runtime.getRuntime().exec("ls"); 这是最简单的一种,你输入后就能就会执行ls命令,如果要获得输出的话可以这样写 Process p = Runtime.getRunti
linux脚本执行的两种方式及区别
linux脚本执行的两种方式及区别   1、两种方式:       A、将脚本作为命令行参数的方式如:sh ping.sh       B、脚本能自己独立运行的方式如:./ping.sh   2、#!/bin/bash 的作用:       常常可以看到在脚本首行有 #!/bin/bash 这行       如果A方式:此行没
使用Dockerfile创建简单java应用镜像
利用Dockerfile构建一个简单的java应用镜像,依赖环境比较简单,JDK,定制化的Tomcat(名为star-appserver) 1、环境准备     ubuntu:14.04     docker : 1.4     jdk:jdk-8u31-linux-x64.gz     tomcat : 7.0(star-appserver)     在/usr/local下创建目录
【Linux】shell调用Java程序main方法通过crontab定时执行
最近一个项目需要写一个batch定时读取文件往数据库里插入记录,第一次写,遇到好多问题,记录一下。 先从shell如何调用java说起。 建立如下目录结构 batch                          根目录 ├── bin                    shell放置目录(如果直接放java class也放这里) │   ├── 1.sh │   ├─
执行mysql命令报错,提示:mysql:command not found
原因: 1、mysql命令执行时,调用的路径有问题。 2、whereis mysql,取得命令执行的绝对路径,用绝对路径去执行命令 mysql: /usr/bin/mysql /usr/lib64/mysql /usr/share/mysql
腾讯云Centos 7.0 服务器上运行Java脚本jar文件
1.运行java脚本 编辑java源文件 vim HelloWorld.java 创建并打开HelloWorld.java文件,编辑内容如下:public class HelloWorld { public static void main(String[] args){ System.out.println("hello world");
mac终端下运行shell脚本
1、写好自己的 脚本,比如aa.sh    2、打开终端 执行,方法一: 输入命令    ./aa.sh     ,   方法二:直接把 aa.sh 拖入到终端里面。   注意事项:   如果 没有成功报出问题::    Permission denied。就是没有权限。   解决办法:   修改该文件aa.sh 的权限 :使用命令:    chmod 777 aa
centos6.5 运行可执行.sh
运行.sh文件可以命令  #sh ./*.sh 的文件名  也可以先  #chmod +x *.sh的文件名  #./*.sh的文件名
source、sh、bash、./执行脚本的区别
1、source命令用法:   source FileName   作用:在当前bash环境下读取并执行FileName中的命令。该filename文件可以无"执行权限"     注:该命令通常用命令“.”来替代。     如:source .bash_profile         . .bash_profile两者等效。     source(或点)命令通常用于重新执行刚修改的初始
我们是很有底线的