我不熟悉shell脚本,所以我不确定如何做或者有可能。如果你能给我链接或建议,那就太好了。
我想做的是:
创建一个简单的文本文件 EX:
param1(RANDOMVALUE)
其中randomvalue是生成的随机数。
使用我们刚刚创建的文件运行程序并输出到文件
./ program filewejustcreated> A
该程序已经创建,它以文件名作为参数,无需担心这些内容。
./ Anotherprogram filewejustcreated>乙
在A,B上运行diff comamand
diff A B
显示diff返回的内容......
由于
[编辑]我正在使用shell:tcsh
答案 0 :(得分:3)
你几乎已经编写了脚本。唯一缺少的是随机数;我会用Perl做的。这是一个快速的& sh中的脏解(或者bash;我假设你在Linux / Unix系统上):
#!/bin/sh
perl -e 'print "TheWord (", int(rand(1000)), ")\n"' > tempfile
./program tempfile > A
./Anotherprogram tempfile > B
# rm tempfile # this would delete 'tempfile' if uncommented
diff A B
现在将其保存在文件(例如,script.sh)和shell执行:
中chmod +x script.sh
使其可执行,
./script.sh
运行它。
答案 1 :(得分:3)
我不确定在tcsh中生成随机数的函数。但是,在像BASH这样的更常见的shell中,对变量$RANDOM
的引用会生成随机数。
因此,在你的shell脚本(这里是一个BASH
shell脚本)中,内容将是:
#Pick the first argument to the call as the file name
FILE_NAME=shift
echo "param1 $RANDOM" > $FILE_NAME
./program $FILE_NAME > $FILE1
./Anotherprogram $FILE_NAME > $FILE2
diff $FILE1 $FILE2
答案 2 :(得分:0)
Shell脚本主要是以完成工作的方式组合不同的程序。有许多程序只做一件简单的事情,并且可以组合起来完成更大的任务,当你进入shell脚本世界时,你会学到这些任务。 大型shell脚本的示例是perl's Configure script。在第一位,你看到(以及一些幽默的评论)cat,true,sh,rm,test,sed,uname和grep used。