【发布时间】:2013-08-21 03:55:06
【问题描述】:
我正在编写一个脚本,以使用不同的输入文件和标志来批量执行快速排序,并将它们以格式化的方式输出到外部文件中。这是脚本的一部分,以便您了解上下文:
echo $file
echo "Naive Pivot"
count=1
while [ $count -lt 4 ]
do
echo "Run $count"
count=$(($count+1))
time ./quicksort -pn -so < $file
echo
done
我已经尝试正常重定向它(从标准输出)
time ./quicksort -pn -so < $file > timing.txt
并尝试从 stderr 重定向(尽管我可能做错了)。
time ./quicksort -pn -so < $file 2 >> timing.txt
我也试过
/usr/bin/time -p -o timing.txt -a ./quicksort -pn -so < $file
并像这样使用标准 stderr 输出设置运行脚本
./testData.sh > timing.txt 2 > timing.txt
但是,它们都在文件的末尾附加了所有计时数据,而不是在我之前和之后放置的 echo 命令的输出之间。因此,尽管命令行中的所有内容都按顺序出现,但当我尝试运行将输出定向到文件的脚本时,所有的回显。
我已经用尽了我的个人知识,需要帮助。如何让时间命令(时间或 /usr/bin/time)正确地输出到我的文件中相对于它们执行的位置?提前致谢。
【问题讨论】:
-
嘿伙计,$file 的内容是什么,我想我有一个解决方案,但想确保我在发布答案之前了解所有变量。