【问题标题】:Automate a C script to work on multiple files自动化 C 脚本以处理多个文件
【发布时间】:2018-08-13 10:36:26
【问题描述】:

我目前正在使用可在此站点上找到的可下载脚本: http://mbio-serv2.mbioekol.lu.se/ARAGORN/

这是一个“.c”脚本,我使用 CodeBlocks 变成了一个“.o”。默认情况下,脚本会分析单个输入文件,从而提供另一个输入文件。

我想让这个脚本适用于大量的输入文件,所以我需要一些自动化。出于这个原因,我需要创建另一个脚本来打开所有输入文件所在的目录,然后在每个输入文件上执行“.o”。

因此,我将为每个输入文件获取一个输出文件。

我想它一定是这样的:

open /.directory

i=0 

while 

(i < 'number of files to analyze') do {
    execute script.o (file i) > outputfilei.txt 
#save result for every input file
    i++
}

我对编程很陌生,所以我不知道如何处理这个问题。任何语言都应该这样做,但我想我更愿意使用 Python,因为我曾经在终端上运行它的脚本(我使用的是 Mac)。

感谢您的时间和帮助。

【问题讨论】:

  • 没有 C 脚本之类的东西。如果你想创建一个 Python 脚本,你应该添加 python 标签而不是 C。但是没有显示一些事先的努力,这个问题与任何标签都是无关紧要的。
  • 没有什么叫 C 脚本。

标签: python c


【解决方案1】:

您尚未指定如何保​​存多次运行的输出,但假设您希望将其全部保存在标准输出上(因为 C 程序默认会打印它),您最好的选择实际上是一个 shell 脚本(在 Python 中,做同样的事情会做更多的工作):

#!/bin/bash
for file ; do ./aragorn (add your options here) $i ; done

现在,如果您将其保存为 aragorn_many(并使其可执行),您可以像这样运行它:

./aragorn_many file1 file2 file3 ...

(假设编译后的 C 和你的 shell 脚本都在你的当前目录中)

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-04-25
    • 1970-01-01
    • 2020-12-14
    • 1970-01-01
    • 1970-01-01
    • 2014-11-05
    相关资源
    最近更新 更多