java执行shell命令

本文介绍如何使用Shell命令自动化执行文件夹删除、路径切换、权限设置及脚本执行操作,包括删除指定目录、修改目录权限、执行特定脚本,并通过Shell命令集进行集成自动化处理。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

			bDelOldFolder = ShellCmdUtils
					.callShell("rm -rf /usr/ne/code/");

			StringBuilder sb = new StringBuilder("cd /usr/ne/code/");
			sb.append(task.getNeName())
					.append(";")
					.append("chmod -R 755 *;")
					.append("dos2unix build_rpm.sh;")
					.append("./build_rpm.sh;");
			String[] command = { "/bin/sh", "-c", sb.toString() };
			boolean bBuild = ShellCmdUtils.callShell(command);


	public static boolean callShell(String shellString) {
		try {
			Process process = Runtime.getRuntime().exec(shellString);
			BufferedReader br = new BufferedReader(new InputStreamReader(
					process.getInputStream()));
			String line = new String();
			while ((line = br.readLine()) != null) {
				LOG.info(line);
			}
			int exitValue = process.waitFor();
			if (0 != exitValue) {
				LOG.error("call shell failed. error code is :" + exitValue);
				return false;
			}
			br.close();
			return true;
		} catch (Exception e) {
			LOG.error("call shell failed. " + e);
			return false;
		}
	}
	
	public static boolean callShell(String[] shellStrings) {
		try {
//			String[] cmd = { "/bin/sh", "-c", shellString };
			Process process = Runtime.getRuntime().exec(shellStrings);
			BufferedReader br = new BufferedReader(new InputStreamReader(
					process.getInputStream()));
			String line = new String();
			while ((line = br.readLine()) != null) {
				LOG.info(line);
			}
			int exitValue = process.waitFor();
			if (0 != exitValue) {
				LOG.error("call shell failed. error code is :" + exitValue);
				return false;
			}
			br.close();
			return true;
		} catch (Exception e) {
			LOG.error("call shell failed. " + e);
			return false;
		}
	}

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值