shell脚本 - 重定向会丢失一些信息

时间:2016-04-28 08:43:11

标签: shell io-redirection

我有一个shell脚本,可以使用以下命令启用ble设备扫描

timeout 10s hcitool lescan

通过执行此脚本(例如ble_scan),我可以看到终端上显示的附近设备。

但是,当我将其重定向到文件和终端

./ble_scan | tee test.log

我无法再看到屏幕上显示的附近设备以及日志文件了。

 ./ble_scan 2>&1 | tee test.log

上面的重定向也没有帮助,我在这里出错了什么?

1 个答案:

答案 0 :(得分:1)

如果命令对文件输出的行为不同,则可以在script内运行它。

script test.log
#=> Script started, output file is test.log
./ble_scan
# lots of output here
exit 
#=> Script done, output file is test.log

请注意,该文件将包含特定于终端的字符,例如通常不会在输出重定向中捕获的回车符。