ftp脚本如下
#!/bin/bash
ftp -v -n 192.168.1.31 << EOF
user app xj
binary
hash
cd /itfapp/reckfile/
lcd /home/Tmp
prompt
mput *
bye
EOF
我将这个脚本的内容放到根下,直接运行没有问题,但是使用java调用却无法上传,java代码如下
Process process = Runtime.getRuntime().exec(new String[] {
"sh", "/ftpfile"});
ftpfile中的内容就是上面那个脚本,运行后的输出如下:
调用ftpfile返回的结果是:Not connected.
调用ftpfile返回的结果是:Not connected.
调用ftpfile返回的结果是:Hash mark printing on (1024 bytes/hash mark).
调用ftpfile返回的结果是:Not connected.
调用ftpfile返回的结果是:Local directory now /home/Tmp
调用ftpfile返回的结果是:Interactive mode off.
调用ftpfile返回的结果是:Not connected.
不存在网络问题,前面已经说明直接运行ftpfile是可以上传的,请指教!我分不多,希望大家不要嫌弃!
在linux上单独用shell脚本可以完成文件上传,可是使用java来调用这个shell...
不要用sh来运行,用bash。sh 应该不支持here doc。Process process = Runtime.getRuntime().exec(new String[] { "sh", "\/ftpfile"});==> Process process = Runtime.getRuntime().exec(new String[] { "bash", "\/ftpfile"});
java里面调用shell文件、不能运行,但是在linux的终端可以争端运行shell文...
Process有三个流:输入流输出流和错误流,你只做了输入流处理,输出流和错误流没有重定向到控制台上。
如何在java程序中调用linux命令或者shell脚本
envp中使用的是name=value的方式。下面说一下,如何使用process来调用shell脚本 例如,我需要在linux下实行linux命令:sh test.sh,下面就是执行test.sh命令的方法:这个var参数就是日期这个201102包的名字。String shpath="\/test\/test.sh"; \/\/程序路径 Process process =null;String command1 = “...
Linux在执行shell脚本时提示find: command not found,单独执行该命令可 ...
出现此问题的原因:linux 执行sh文件里面缺少PATH=$PATH:\/sbin,将其添加进即可解决问题。详细的操作步骤如下:1、首先,需要打开计算机的桌面,右键单击并选择“打开终端”这一项,如下图所示。2、其次,完成上述步骤后,将进入如图所示的页面,在命令行上输入“gedit \/ etc \/ profile”,然后按Enter...
如何在java程序中调用linux命令或者shell脚本
java程序是提供了这个一方法, Process pro = Runtime.getRuntime().exec(cmds); 但是一般来说,尽量去用一些其他脚本(lua,shell,python)去执行一系列linux命令比较灵活, 而且耗费资源少。但是Runtime.getRuntime().exec()这种调用方式在java虚拟机中是十分消耗资源的,即使命令可以很快的执行完毕...
Linux调用脚本向文件写入字符串到文件linux调用脚本
在linux下shell脚本执行命令主要有四种方式,具体介绍如下:方式一:切换到shell脚本所在的目录(也叫工作目录)执行shell脚本,具体代码是:cd\/data\/shell .\/hello.sh 方式二:可以以绝对路径的方法去执行bashshell脚本,具体代码是:\/data\/shell\/hello.sh 方式三:可以选择直接使用bash命令或者sh命令来执行...
linux shell脚本如何启动一个java进程
在shell脚本中直接执行java就行了,比如写个a.sh文件 !\/bin\/bash java a.class 就行了,然后保存,执行bash a.sh脚本。如果要后台运行,则bash a.sh&
Linux用shell脚本来处理的好处
虽然我做linux嵌入式测试,不是开发。但我可以告诉你,绝对必要。Linux下很多事情用shell脚本来处理非常方便:1)启动脚本,负责启动系统进程、守护进程等。2)脚本可以做一些文件处理、命令行工具调用,在C程序中用system系统调用方式执行脚本。
通过java程序(JSch)运行远程linux主机上的shell脚本
通过Java程序运行远程Linux主机上的shell脚本是可能的,这需要借助JSch库来实现。在使用之前,请确保远程主机已经开启SSH服务。接下来,通过Maven坐标引入JSch依赖库,以执行远程主机上的脚本。创建名为“hello.sh”的文件,内容仅用于测试,即输出“hello ”。将此文件保存在远程主机的“\/root”目录下,并...
Linux的shell编程:题目要求写一个脚本能够基本达到ls -R这个命令的效果...
1,会受到改变,如果那行改成ls -l可以达到同样的目标,而且更易读一些。但是如果用List 就会调用一次List本身,就会改变目录位置,因此最后加一个CD $1回到主目录。2,第二个List中的唯一区别是没有cd $1.就是说LS $1只能显示目录,但是不在目录下面。你怎么判断 -d,因此循环只在脚本目录里执行...