我有一个测试脚本,用于估计特定 Oracle 导出转储文件的文件大小。脚本的内容是:
mknod exp.pipe p
dd if=exp.pipe of=/dev/null bs=1024 &
exp system/sys123@testorcl file=exp.pipe parfile=exptest1.par
输出如下屏幕所示,需要将其捕获到进一步计算所需的文件或变量中。
. exporting dimensions
. exporting post-schema procedural objects and actions
. exporting statistics
Export terminated successfully without warnings.
12+0 records in.
12+0 records out.
我需要通过变量或文件计算 Records in 或 Records out 中的值 12 和 0,以可行的为准。
答案1
我以同样的方式开始
mknod exp.pipe p
wc -c < exp.pipe > pipe.c 2>&1 &
dd if=/dev/zero of=exp.pipe count=5
5+0 records in
5+0 records out
2560 bytes (2,6 kB) copied, 0,001472 s, 1,7 MB/s
然后
cat pipe.c
2560
这不是你问的,但它会给你出口的大小。
我没有实用exp
工具,但在过去,曾经有一个预览选项,它(通过正确的解析)可能会给你一个关于它的大小的提示。
答案2
重定向标准错误
dd if=exp.pipe of=/dev/null bs=1024 2> dd