【发布时间】:2015-03-12 03:43:26
【问题描述】:
我需要一个 shell 脚本,它会创建一个循环来启动从文件中读取的并行任务...
有些东西……
#!/bin/bash
mylist=/home/mylist.txt
for i in ('ls $mylist')
do
do something like cp -rp $i /destination &
end
wait
所以我想要做的是在后台发送一堆任务,并为 $mylist 中的每一行添加“&”,然后等待它们在存在之前完成。
但是,那里可能有很多行,所以我想控制启动多少并行后台进程;希望能够在说.. 5 时将其最大化? 10 点?
有什么想法吗?
谢谢
【问题讨论】:
-
听起来像你想要的GNU parallel
-
无论如何要在不添加任何其他实用程序的情况下执行此操作?我知道并行,但我无法让管理员安装它。
-
除非您要复制到不同的设备,否则复制文件的速度不太可能得到很大提升,如果您有多个文件,则速度可能会更慢。
-
@exxoid 是什么让您认为您需要管理员来安装 GNU Parallel?
标签: bash shell scripting ksh aix