shell——并发工具parallel
官方文档:https://www.gnu.org/software/parallel/parallel_tutorial.html
安装
(wget -O - pi.dk/3 || curl pi.dk/3/ || fetch -o - http://pi.dk/3) | bash
安装完成后就是一个一万多行的perl脚本,把脚本复制到其他机器一样可以用。
各种应用请查看官方文档。
各种参数请查看man文档。
这里引用random233的博客https://www.jianshu.com/p/c5a2369fa613的用法示例:
1. 传参数模式
seq 5 |parallel echo test_{} 2>/dev/null
#结果
test_1
test_2
test_3
test_4
test_5
#由于使用parallel命令会打印出一大堆作者的话,所以直接把标准错误丢弃,以屏蔽这些没用的输出。
#{}是占位符,表示传参数的位置。
2. 管道模式
cat mylog | grep pattern
cat my_large_log | parallel --pipe grep pattern #以上两条结果相同,只是parallel会多核并行执行。
3. random233还提到一个很有用的用法,测并发。
seq 3 |parallel -n 0 curl -I www.baidu.com #-n 传递的最大参数个数。-n 0表示不传参数。
shell——并发工具parallel的更多相关文章
- 如何实现shell并发 一个入门级可控多线程shell脚本方案
		
如何实现shell并发 很多人都问我如何写shell脚本,如何实现同时给三台ftp服务器上传文件,如何同时检测三台服务器是否alive等,其实这就是想实现shell的并发.那么shell并 ...
 - 并发工具类:CountDownLatch、CyclicBarrier、Semaphore
		
在多线程的场景下,有些并发流程需要人为来控制,在JDK的并发包里提供了几个并发工具类:CountDownLatch.CyclicBarrier.Semaphore. 一.CountDownLatch ...
 - JavaEE Tutorials (27) - Java EE的并发工具
		
27.1并发基础427 27.1.1线程和进程42827.2并发工具的主要组件42827.3并发和事务42927.4并发和安全43027.5jobs并发示例430 27.5.1运行jobs示例4302 ...
 - JUC学习笔记--JUC中并发工具类
		
JUC中并发工具类 CountDownLatch CountDownLatch是我目前使用比较多的类,CountDownLatch初始化时会给定一个计数,然后每次调用countDown() 计数减1, ...
 - java 并发工具类CountDownLatch & CyclicBarrier
		
一起在java1.5被引入的并发工具类还有CountDownLatch.CyclicBarrier.Semaphore.ConcurrentHashMap和BlockingQueue,它们都存在于ja ...
 - Java并发工具类 - CountDownLatch
		
Java并发工具类 - CountDownLatch 1.简介 CountDownLatch是Java1.5之后引入的Java并发工具类,放在java.util.concurrent包下面 http: ...
 - java中的并发工具类
		
在jdk的并发包里提供了几个非常有用的并发工具类.CountDownLatdch.CyclicBarrier和Semaphore工具类提供了一种并发流程控制的手段,Exchanger工具类则提供了在线 ...
 - Java中的4个并发工具类 CountDownLatch CyclicBarrier Semaphore Exchanger
		
在 java.util.concurrent 包中提供了 4 个有用的并发工具类 CountDownLatch 允许一个或多个线程等待其他线程完成操作,课题点 Thread 类的 join() 方法 ...
 - Java中的并发工具类(CountDownLatch、CyclicBarrier、Semaphore、Exchanger)
		
在JDK的并发包里提供了很多有意思的并发工具类.CountDownLatch.CyclicBarrier和Semaphore 工具类提供了一种并发流程控制的手段,Exchanger 工具类则提供了在线 ...
 
随机推荐
- Notepad++插件Base64编解码
			
我们平常进行Base64编码需要自己写代码转换, 或者使用其他人编写的小工具程序, 也可以使用在线base64编码工具, 现在我们还可以使用Notepad++自带的插件, 进行Base64编码和解码, ...
 - EntityFrameworkCore数据迁移(一)
			
.net core出来已经有很长一段时间了,而EentityFrameworkCore(后面简称EFCore)是.net framework的EntityFramework在.net core中的实现 ...
 - python call函数
			
call()函数本质上是将一个类的实例转换成一个函数,例如下列示例: class Sample: def __init__(self, x, y): self.x = x self.y = y def ...
 - Nginx日志通过Flume导入到HDFS中
			
关注公众号:分享电脑学习回复"百度云盘" 可以免费获取所有学习文档的代码(不定期更新) flume上传到hdfs: 当我们的数据量比较大时,比如每天的日志文件达到5G以上 使用ha ...
 - 如何向内核提交补丁?——FirstKernelPatch
			
参考 https://kernelnewbies.org/FirstKernelPatch
 - 灵雀云开源网络插件Kube-OVN 1.4.0 版发布!支持跨集群容器网络、NetworkPolicy 日志
			
从 1.4 开始 Kube-OVN 支持将多个 Kubernetes 集群容器网络打通,不同集群之间的 Pod 可以通过 Pod IP 直接互相通信.本版本还支持 ACL 日志,可以记录因 Netwo ...
 - k8s中初始化容器(init container)的作用及其使用方法
			
概述 在容器的部署过程中,有的时候需要在容器运行之前进行一些预配置的工作,比如下载配置,判断某些服务是否启动,修改配置等一些准备的工作,想要实现这些功能,在k8s中可以使用初始化容器,在应用容器运行之 ...
 - promise到底怎么理解
			
Promise的含义promise是异步编程的一种解决方法.所谓promise,简单说是一个容器,里面保存着某个未来才会结束的事件(通常是一个异步操作)的结果,从语法上说,promise是一个对象,从 ...
 - 01-JS中字面量与变量
			
01-JS中字面量与变量 一.直接量(字面量) 字面量:英语叫做literals,也做直接量,看见什么,它就是什么. (一)数字的字面量 数字的字面量,就是这个数字自己,并不需要任何的符号来界定这个数 ...
 - hdfs文件导入到hive(带资源)
			
前言 hive是基于Hadoop的一个数据仓库工具,用来进行数据提取.转化.加载,这是一种可以存储.查询和分析存储在Hadoop中的大规模数据的机制.hive数据仓库工具能将结构化的数据文件映射为一张 ...