parallel是linux中用于并行执行命令的高效工具,可通过管道读取输入并利用多核CPU同时处理任务。需手动安装,如ubuntu用sudo apt install parallel。基本语法为echo -e “file1nfile2” | parallel echo “Processing {}”,其中{}为占位符。常用选项包括-j N控制并发数,:::后接参数列表,-k保持输出顺序,–dry-run预览命令。可结合find、wget等命令实现批量压缩、下载、图像处理等任务,提升自动化效率。
在linux命令行中,parallel 是一个强大的工具,用于并行执行命令,显著提升处理大量任务时的效率。它可以从标准输入读取数据,将每行作为参数传递给指定命令,并在多个CPU核心上同时运行这些命令。
安装 parallel
大多数发行版默认不安装 parallel,需要手动安装:
# debian/Ubuntu sudo apt install parallel
centos/RHEL/Fedora
sudo yum install parallel # CentOS/RHEL
sudo dnf install parallel # Fedora
基本用法
parallel 的基本语法是:将输入通过管道传给 parallel,后者逐行处理并执行命令。
echo -e “file1nfile2nfile3” | parallel echo “Processing {}”
其中 {} 是占位符,代表输入的每一项。上面命令会输出:
Processing file1 Processing file2 Processing file3
常用选项和技巧
parallel 支持多种选项来控制并行行为和输入格式。
- -j N:指定并行任务数。例如 -j 4 表示最多同时运行4个进程
- ::::直接在命令行提供参数列表
- -k:保持输出顺序与输入一致
- –dry-run:预览实际要执行的命令,不真正运行
示例:使用 :::: 提供参数
parallel -j 2 echo “Hello {}” ::: Alice Bob Charlie
这会并行执行三条 echo 命令,最多两个同时运行。
从文件读取输入:
parallel -a tasks.txt bash run.sh {}
等同于 cat tasks.txt | parallel bash run.sh {}
实际应用场景
parallel 特别适合批量处理任务。
- 批量压缩文件:find . -name “*.txt” | parallel gzip
- 并行下载:cat urls.txt | parallel wget -O {}.html
- 图像批量处理:ls *.jpg | parallel convert {} -resize 50% thumb_{}
- 快速测试端口连通性:parallel -j10 echo {} ::: {1..100} | nc -zv example.com
注意:使用 parallel 时要考虑系统负载,避免 -j 设置过大导致资源耗尽。
基本上就这些。掌握 parallel 能大幅提升命令行工作效率,特别适合自动化脚本和数据处理任务。
以上就是Linux命令行中parallel命令的使用方法的详细内容,更多请关注php中文网其它相关文章!
评论(已关闭)
评论已关闭