Ruby调用shell命令
原来发在diandian的几篇旧闻,也一并转到iteye上来吧。
1. exec
exec 'echo "hello $HOSTNAME"'
用echo命令来取代当前进程,无法知道命令是否成功
2. system
system('echo "hello $HOSTNAME"')
运行一个子shell来避免覆盖当前进程,运行成功返回true,运行失败返回false
3. ·· 反引号
`echo $HOSTNAME`
运行一个子shell来避免覆盖当前进程,可以接受命令执行结果
4. IO.popen
def run(command, input='')IO.popen(command, 'r+') do |io|io.puts inputio.close_writereturn io.readend endrun 'wc -w', 'How many words are in this string?'
IO.popenis a good way to run noninteractive commandscommands that read
all their standard input at once and produce some output.
5. Open3#open3
require 'open3'Open3.popen3('bc') do | stdin, stdout, stderr |Thread.new { loop { puts "STDOUT stream: #{stdout.gets}" } }Thread.new { loop { puts "STDERR stream: #{stderr.gets}" } }stdin.puts "3 * 4"stdin.puts "1 / 0"stdin.puts "2 ^ 5"sleep 0.1
end
Runs a command in a subprocess. Data written to stdin can be read by the subprocess, anddata written to standard output and standard error in the subprocess will be available on thestdout and stderr streams.
Ruby调用shell命令相关推荐
- 从Ruby调用Shell命令
如何从Ruby程序内部调用Shell命令? 然后如何将这些命令的输出返回到Ruby? #1楼 上面的答案已经很不错了,但是我真的很想分享以下摘要文章:" 在Ruby中运行Shell命令的6种 ...
- python 调用shell命令的方法
转载: https://www.cnblogs.com/thinker-lj/p/3860123.html https://www.cnblogs.com/wenwangt/p/4897961.htm ...
- python调用shell命令-Python调用shell命令常用方法(4种)
方法一.使用os模块的system方法:os.system(cmd),其返回值是shell指令运行后返回的状态码,int类型,0表示shell指令成功执行,256表示未找到,该方法适用于shell命令 ...
- python调用shell命令-用Python调用Shell命令
Python经常被称作"胶水语言",因为它能够轻易地操作其他程序,轻易地包装使用其他语言编写的库,也当然可以用Python调用Shell命令. 用Python调用Shell命令有如 ...
- python调用shell命令-在Python中执行shell命令的6种方法,你都知道吗?
原标题:在Python中执行shell命令的6种方法,你都知道吗? Python经常被称作"胶水语言",因为它能够轻易地操作其他程序,轻易地包装使用其他语言编写的库.今天我们就讲解 ...
- python调用shell命令-「Python」6种python中执行shell命令方法
用Python调用Shell命令有如下几种方式: 第一种: os.system("The command you want"). 这个调用相当直接,且是同步进行的,程序需要阻塞并等 ...
- Awk中调用shell命令
Awk中调用shell命令 需求 在awk中,有时候需要调用linux系统中命令,如计算字符串的MD5值,并保存下来. 方法参考 call a shell command from inside aw ...
- python 中调用shell命令
subprocess模块 根据Python官方文档说明,subprocess模块用于取代上面这些模块.有一个用Python实现的并行ssh工具-mssh,代码很简短,不过很有意思,它在线程中调用sub ...
- python使用shell命令_python 调用shell命令的方法
在python程序中调用shell命令,是件很酷且常用的事情-- 1. os.system(command) 此函数会启动子进程,在子进程中执行command,并返回command命令执行完毕后的退出 ...
最新文章
- 中国科学:中科院遗传发育所揭示拟南芥二半萜对根系微生物组的调控机制
- 免费的容器架构可视化工具 | 阿里云应用高可用服务 AHAS 发布重大新特性
- Python学习笔记:安装python
- react native命令行全局安装
- 关于电商网站购物车功能如何与登录账号相关联的一点想法
- 基于深度卷积神经网络的大豆叶斑病识别
- 限制本机访问某一些网站,本人不再花时间看新闻了
- mysql官网社区免费版下载方法
- 【OOP编程思想小感悟】
- Mac 系统SourceTree 配置VSCode代码对比工具
- 软考【网络工程师】(上午经典例题——软件项目活动图 详解)
- 进制转化——2022蓝桥杯(E题)
- 学计算机科学与技术的考研方向,计算机科学与技术考研方向?
- 稳压、调压、监控、DC/DC电路大全2
- 大厂Java面试过程中如何介绍自己的项目经历?
- 计算机学会认定的比赛,CCF NOIP2020 参赛资格确定方案
- CAPI 初探及使用小结(4)
- vite打包报错EPERM: operation not permitted
- 黑盒测试方法五(场景法)
- 怀旧服大脚插件未能从服务器,大脚插件问题
热门文章
- FPGA(4)晶振与计数器 -- 实现定时器(led定时闪烁、蜂鸣器频率控制(单响)、蜂鸣器报警(频带控制,多响))
- 【seaborn】(1) 数据可视化,绘图风格、布局
- Linux gcc 制作动/静态链接库
- 学习java周期_Java第一作业周期总结
- 丢失msvcr120d.dll、msvcr120.dll、msvcp120d.dll、msvcp120.dll问题解决方法
- Blender中的Python脚本介绍学习教程
- 使用内存盘 格式化文件系统以及部署ceph-osd
- Docker最全教程——从理论到实战(六)
- PHPMailer类 发送邮件
- 存储过程中SELECT与SET对变量赋值