gpt4 book ai didi

linux - 在 unix 中并行运行多个命令

转载 作者:塔克拉玛干 更新时间:2023-11-02 23:44:04 25 4
gpt4 key购买 nike

我的文件很少,我必须从这些文件中删除几列以生成新文件 unix。我尝试在循环中选择目录中的文件并生成新文件,但是作为具有 100 个这样的文件的目录,生成新文件需要很多时间。

如果我可以并行选择 10 个文件并生成 10 个新文件并再次生成下一组 10 个文件,谁能帮忙,因为这会减少时间。

为此我需要示例 unix 代码块

cut -b 1-10,25-50,65-79 file1.txt > file_cut1.txt

cut -b 1-10,25-50,65-79 file2.txt > file_cut2.txt

最佳答案

您可以像这样使用 GNU Parallel 非常简单地做到这一点:

parallel 'cut -b 1-10,25-50,65-79 {} > {.}_cut.txt' ::: file*txt

哪里:

  • {} 表示当前文件名,
  • {.} 表示不带扩展名的当前文件名。

在尝试此操作或任何不熟悉的命令之前备份目录中的文件。

它将并行处理您的文件,一次执行 N,其中 N 是您 CPU 中的核心数。如果你想让它一次做 8 个工作,请使用:

parallel -j 8 ...

如果您想查看它做什么,而不实际做任何事情,请使用:

parallel --dry-run ...

关于linux - 在 unix 中并行运行多个命令,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52580147/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com