
类似于使用node | tee out.txt可以把 node 中输出的内容不仅输出到屏幕终端,还可以输出到文件out.txt。
那怎么样做才能把不影响向终端中正常输入内容,同时把输入的内容保存一份到文件中,作为记录呢?
是要对/dev/stdin动手脚吗?
RTRT 谢谢各位了!
1 andyfan 2021-12-21 22:10:53 +08:00 via Android 有一个命令叫 history |
2 thedrwu 2021-12-21 22:12:27 +08:00 via Android tee in.txt | node |
5 lululau 2021-12-21 22:28:24 +08:00 tee out.txt | node 另外,虽然标准 IO 默认指向终端,但是它和终端不是一个概念,标题应该把终端改为标准输入 |
6 tuduweb OP |
7 lululau 2021-12-21 22:39:58 +08:00 brew install ttyrec man ttyrec man ttyplay |
8 sisylocke 2021-12-21 22:44:08 +08:00 不行的,在 stdout 进程结束前终端不能读取 stdin ,你需要的是 readlineSync 之类的工具。 |
9 zhlxsh 2021-12-21 22:49:28 +08:00 via iPhone 你要做的原本的事情是什么,我觉得有可能通过其他方法去完成你的要求 |
10 lululau 2021-12-21 22:49:35 +08:00 其实 tee out.txt | node 这个方法是对的,你说的阻塞了 node 的交互信息输出,是因为 node 判断了如果标准输入不是 tty 则默认启用 script mode ,可以加 -i 参数强制 interactive mode tee out.txt | node -i |
11 hsfzxjy 2021-12-21 22:57:43 +08:00 via Android 你是要 script 命令吧 |
12 tuduweb OP @zhlxsh 我要做的是,根据用户在终端中的输入,来判断用户是否完成了某些步骤。 比如我想判断用户在 gdb 调试器中,是否根据流程(教程)输入了某些控制指令,我个人想到的简单的方式是判断输入。 |
13 tuduweb OP |