知道怎么在本机上用java 代码删除服务器上的文件?
知道怎么在本机上用java代码删除服务器上的文件我本机是windos操作系统然后服务器是unix的操作系统我要通过java代码操作删除服务器上制定的文件怎么实现摁?...
知道怎么在本机上用java 代码删除服务器上的文件
我本机是windos操作系统 然后服务器是unix的操作系统
我要通过java代码操作删除服务器上制定的文件 怎么实现摁? 展开
我本机是windos操作系统 然后服务器是unix的操作系统
我要通过java代码操作删除服务器上制定的文件 怎么实现摁? 展开
展开全部
import java.io.InputStream;
import java.io.PrintStream;
import org.apache.commons.net.telnet.TelnetClient;
/**
* 利用apache net 开源包,使用telnet方式获取AIX主机信息
* @version 1.2
*/
public class NetTelnet {
// Telnet对象
private TelnetClient telnet = new TelnetClient();
private InputStream in;
private PrintStream out;
// 提示符。具体请telnet到AIX主机查看
private char prompt = '#';
// telnet端口
private String port;
// 用户
private String user;
// 密码
private String password;
// IP地址
private String ip;
public NetTelnet() {
try {
// AIX主机IP
this.ip = "219.243.12.10";
this.password = "05933663007";
this.user = "administrator";
this.port = "23";
telnet.connect(ip, Integer.parseInt(port));
System.out.println("开始获取输入流...");
in = telnet.getInputStream();
out = new PrintStream(telnet.getOutputStream());
// 登录
/* readUntil("login: ");
write(user);
readUntil("Password: ");
write(password);
readUntil(prompt + " ");*/
} catch (Exception e) {
e.printStackTrace();
}
}
/**
* 读取分析结果
*
* @param pattern
* @return
*/
public String readUntil(String pattern) {
try {
char lastChar = pattern.charAt(pattern.length() - 1);
StringBuffer sb = new StringBuffer();
char ch = (char) in.read();
while (true) {
sb.append(ch);
if (ch == lastChar) {
if (sb.toString().endsWith(pattern)) {
return sb.toString();
}
}
ch = (char) in.read();
}
} catch (Exception e) {
e.printStackTrace();
}
return null;
}
/**
* 写
*
* @param value
*/
public void write(String value) {
try {
out.println(value);
out.flush();
} catch (Exception e) {
e.printStackTrace();
}
}
/**
* 向目标发送命令字符串
*
* @param command
* @return
*/
public String sendCommand(String command) {
try {
write(command);// 执行删除的命令 rm -rf *.*
return readUntil(prompt + " ");
} catch (Exception e) {
e.printStackTrace();
}
return null;
}
/**
* 关闭连接
*
*/
public void disconnect() {
try {
telnet.disconnect();
} catch (Exception e) {
e.printStackTrace();
}
}
public static void main(String[] args) {
try {
System.out.println("开始执行telnet......");
NetTelnet telnet = new NetTelnet();
// 通过aix的命令“查找主机名称”获取数据
// 命令是 "hostname"
// 不熟悉命令的参考<<AIX网络管理手册>>
System.out.println("开始发送hostname命令");
String result = telnet.sendCommand("hostname");
System.out.println("显示结果");
System.out.println(result);
// 最后一定要关闭
telnet.disconnect();
} catch (Exception e) {
e.printStackTrace();
}
}
}
import java.io.PrintStream;
import org.apache.commons.net.telnet.TelnetClient;
/**
* 利用apache net 开源包,使用telnet方式获取AIX主机信息
* @version 1.2
*/
public class NetTelnet {
// Telnet对象
private TelnetClient telnet = new TelnetClient();
private InputStream in;
private PrintStream out;
// 提示符。具体请telnet到AIX主机查看
private char prompt = '#';
// telnet端口
private String port;
// 用户
private String user;
// 密码
private String password;
// IP地址
private String ip;
public NetTelnet() {
try {
// AIX主机IP
this.ip = "219.243.12.10";
this.password = "05933663007";
this.user = "administrator";
this.port = "23";
telnet.connect(ip, Integer.parseInt(port));
System.out.println("开始获取输入流...");
in = telnet.getInputStream();
out = new PrintStream(telnet.getOutputStream());
// 登录
/* readUntil("login: ");
write(user);
readUntil("Password: ");
write(password);
readUntil(prompt + " ");*/
} catch (Exception e) {
e.printStackTrace();
}
}
/**
* 读取分析结果
*
* @param pattern
* @return
*/
public String readUntil(String pattern) {
try {
char lastChar = pattern.charAt(pattern.length() - 1);
StringBuffer sb = new StringBuffer();
char ch = (char) in.read();
while (true) {
sb.append(ch);
if (ch == lastChar) {
if (sb.toString().endsWith(pattern)) {
return sb.toString();
}
}
ch = (char) in.read();
}
} catch (Exception e) {
e.printStackTrace();
}
return null;
}
/**
* 写
*
* @param value
*/
public void write(String value) {
try {
out.println(value);
out.flush();
} catch (Exception e) {
e.printStackTrace();
}
}
/**
* 向目标发送命令字符串
*
* @param command
* @return
*/
public String sendCommand(String command) {
try {
write(command);// 执行删除的命令 rm -rf *.*
return readUntil(prompt + " ");
} catch (Exception e) {
e.printStackTrace();
}
return null;
}
/**
* 关闭连接
*
*/
public void disconnect() {
try {
telnet.disconnect();
} catch (Exception e) {
e.printStackTrace();
}
}
public static void main(String[] args) {
try {
System.out.println("开始执行telnet......");
NetTelnet telnet = new NetTelnet();
// 通过aix的命令“查找主机名称”获取数据
// 命令是 "hostname"
// 不熟悉命令的参考<<AIX网络管理手册>>
System.out.println("开始发送hostname命令");
String result = telnet.sendCommand("hostname");
System.out.println("显示结果");
System.out.println(result);
// 最后一定要关闭
telnet.disconnect();
} catch (Exception e) {
e.printStackTrace();
}
}
}
展开全部
import java.io.File;
public class DelFile
{
public static void main(String[] args)
{
File file = new File("D:\\test.txt");
file.delete();
//file.deleteOnExit();
}
}
两个方法都行,但是unix要有权限。
public class DelFile
{
public static void main(String[] args)
{
File file = new File("D:\\test.txt");
file.delete();
//file.deleteOnExit();
}
}
两个方法都行,但是unix要有权限。
追问
怎么知道要删除的是那个机器上的呢
追答
这个不需要关注如果服务有创建这个文件的权限,就应该有删除的权限,开发基本上不会遇到权限问题。如果遇到本机赋权即可,
如果要用代码实现,这个我也不知道
本回答被提问者和网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐于2018-03-08
展开全部
如果对方没有运行特定的程序,用java是永远做不到的,其他语言也做不到(漏洞入侵除外)。
就好比一个金库里面有数不尽的钱,java是你用来装钱的车子,可是这个金库没有门,你只能干着急(或者炸开金库,手动开一个门) 。上面说的特定的程序就可以理解为是一扇门
就好比一个金库里面有数不尽的钱,java是你用来装钱的车子,可是这个金库没有门,你只能干着急(或者炸开金库,手动开一个门) 。上面说的特定的程序就可以理解为是一扇门
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
用java代码删除,太不安全了吧。用ftp或者直接登录到服务器上去删除,感觉比较安全
追问
需求是这样的。。。额。。。。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询
广告 您可能关注的内容 |