Runime.getRuntime().exec()中执行任意命令的两种方法

简介:

经常发现需要用数组方式传参才能执行某些命令:
Runime.getRuntime().exec()中执行任意命令的两种方法
Runime.getRuntime().exec()中执行任意命令的两种方法
原因在于执行多参数的时候,空格被当做分隔符了,因此,你的命令行被当成多个参数了:
Runime.getRuntime().exec()中执行任意命令的两种方法
解决方法1:
使用${IFS},例如:

echo "a${IFS}a${IFS}a"

解决方法2:
在你要执行的shell指令前添加如下指令:

sh -c $@|sh . echo














本文转自fatshi51CTO博客,原文链接:http://blog.51cto.com/duallay/2044760 ,如需转载请自行联系原作者



相关文章
|
7月前
|
前端开发 Java
Java Process类Runtime.getRuntime().exec() 执行bat脚本程序
Java Process类Runtime.getRuntime().exec() 执行bat脚本程序
469 0
|
7月前
|
Java
cmd执行java程序,提示:Javac不是内部命令或外部命令~
cmd执行java程序,提示:Javac不是内部命令或外部命令~
94 0
|
7月前
|
Java 关系型数据库 MySQL
Elasticsearch【问题记录 01】启动服务&停止服务的2类方法【及 java.nio.file.AccessDeniedException: xx/pid 问题解决】(含shell脚本文件)
【4月更文挑战第12天】Elasticsearch【问题记录 01】启动服务&停止服务的2类方法【及 java.nio.file.AccessDeniedException: xx/pid 问题解决】(含shell脚本文件)
710 3
|
2月前
|
Shell Docker 容器
使用exec模式与shell模式,执行ENTRYPOINT和CMD的区别
结合 `exec`与 `shell`模式,`ENTRYPOINT`与 `CMD`在Docker容器启动时的交互方式展现出不同的特点。选择哪种模式,取决于对执行环境的纯净度、性能需求以及是否需要利用shell特性。理解这些细微差别,有助于更精细地控制容器的行为,优化应用部署与管理流程。
121 0
|
7月前
|
Shell
【shell】shell命令行放在变量中执行以及变量的常用方法
【shell】shell命令行放在变量中执行以及变量的常用方法
|
C语言 C++
【C++】 --- 写个函数在main函数执行前先运行
【C++】 --- 写个函数在main函数执行前先运行
150 0
|
7月前
|
关系型数据库 MySQL Java
Elasticsearch【问题记录 01】启动&停止服务的2类方法及 java.nio.file.AccessDeniedException: xx/pid 问题解决(含启停shell脚本)
Elasticsearch【问题记录 01】启动&停止服务的2类方法及 java.nio.file.AccessDeniedException: xx/pid 问题解决(含启停shell脚本)
173 0
|
Shell C++
C++中的exec()函数
exec()函数在C++中是一个进程控制函数,用于创建新进程执行其他程序或命令行指令。exec()函数可以替换当前进程的代码和数据,创建新的进程运行其他程序。exec()函数有多个版本,例如execl、execv、execle、execve等,根据不同的参数类型和个数来使用。
182 0
Runtime.getRuntime().exec()如何调用7z解压文件
Runtime.getRuntime().exec()如何调用7z解压文件
114 0

热门文章

最新文章