linux - 对不同文件运行命令并存储输出结果

标签 linux bash command

我的计算机中有很多文件,我需要使用一些命令运行一个程序,以便评估这些文件并获得一些结果。用于评估其中一个文件的命令如下所示:

./abc
abc 01> read_verilog myfile1.v
abc 02> sat
abc 03> quit

运行“sat”命令后,一些结果将显示在终端中,我需要将它们存储在 .txt 文件中。 我已经编写了一个脚本来为 1000 个文件运行此命令(如下),但我的问题是我无法存储所有这些文件的“sat”命令的输出。

  #!/bin/bash
# since Bash v4
for i in {1..1000..1}
do
    ./abc <<EOF
    read_verilog "myfile$i.v"
    sat
    quit
    EOF
done

最佳答案

您可以将here-doc的输出写入目标输出文件,如下所示

./abc <<EOF > /tmp/outputfile"${i}".txt
read_verilog "myfile$i.v"
sat
quit
EOF

目标输出路径可以是任何路径,不一定是在 /tmp 下,可以只是 outputfile"${i}".txt

关于linux - 对不同文件运行命令并存储输出结果,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43976491/

相关文章:

editor - vi 替换命令

linux - 如何使用linux grep命令?

python - Docker 在 Heroku 中部署错误 - 权限被拒绝

linux - 消息 "debian/rules: no such file or directory"

linux - Bash 命令替换为参数

shell - 在每个文本文件的顶部和底部添加新行

linux - make不删除中间文件

linux - 从文件中截取一些行的聪明方法

python - 使用 SQL 提取唯一值

shell - .bash_profile 中的 Mac OS X echo $(date) 给出陈旧的日期