【发布时间】:2014-07-22 02:44:07
【问题描述】:
全部。
我有一个简单的问题。我有一堆名为 test01.vc、test02.vc、..、test84.vc 的文件。这些是 c 子集的源代码。现在我想自动测试我的编译器。所以我想做的基本上是在每个源文件上自动运行三个命令。命令依次为:
java VC.vc testXX.vc
java jasmin.Main testXX.j
java testXX
如何为每个文件编写一个终端脚本?
【问题讨论】:
全部。
我有一个简单的问题。我有一堆名为 test01.vc、test02.vc、..、test84.vc 的文件。这些是 c 子集的源代码。现在我想自动测试我的编译器。所以我想做的基本上是在每个源文件上自动运行三个命令。命令依次为:
java VC.vc testXX.vc
java jasmin.Main testXX.j
java testXX
如何为每个文件编写一个终端脚本?
【问题讨论】:
创建一个包含以下内容的文件
for f in `find *.vc`; do
fn=`echo $f | cut -d'.' -f1`;
echo "Processing ... $f";
java VC.vc $f
java jasmin.Main $fn.j
java $fn
done;
将它放在与您要测试的文件相同的目录中。
将其作为bash 脚本运行,在授予run 权限(chmod +x Filename)后由./Filename 调用它。
【讨论】:
我做了这样的事情。
#!/bin/bash
# set n to 1
n=1
# continue until $n equals 5
while [ $n -le 84 ]
do
java VC.vc testsFixed/test$n
java jasmin.Main testsFixed/test$n.j
java testsFixed/test$n
n=$(( n+1 )) # increments $n
done
【讨论】: