在 bash 控制台上,如果我这样做:
cd mydir
ls -l > mydir.txt
> 运算符捕获标准输入并将其重定向到文件;所以我得到了
mydir.txt
中的文件列表,而不是标准输出中的。有什么办法可以在 rails 控制台上做类似的事情吗?
我有一个 ruby 语句,它生成大量打印(约 8k 行),我希望能够完整地看到它,但控制台只“记住”最后 1024 行左右。所以我想重定向到一个文件 - 如果有人知道更好的选择,我全神贯注。
最佳答案
您可以使用 override $stdout
重定向控制台输出:
$stdout = File.new('console.out', 'w')
您可能还需要调用一次:
$stdout.sync = true
这会将所有输出重定向到文件。如果您想临时重定向输出,请确保您存储
$stdout
的原始值,以便您可以将其更改回来。关于ruby-on-rails - rails - 将控制台输出重定向到文件,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/2461503/