我正在尝试使用该script
命令在我编写的程序上运行一些测试C
并将 shell 历史记录保存到文件中。
我面临的问题是生成的文件没有显示实际的命令,它只显示输出......
我目前正在使用:
$ script -c `./tests.sh` shell.txt
tests.sh
包含测试的 bash 脚本在哪里。
但这只会写出应该出现在标准输出上的内容(类似于我使用了>
重定向......
你知道我做错了什么,或者我误读了手册页吗?
干杯
我正在尝试使用该script
命令在我编写的程序上运行一些测试C
并将 shell 历史记录保存到文件中。
我面临的问题是生成的文件没有显示实际的命令,它只显示输出......
我目前正在使用:
$ script -c `./tests.sh` shell.txt
tests.sh
包含测试的 bash 脚本在哪里。
但这只会写出应该出现在标准输出上的内容(类似于我使用了>
重定向......
你知道我做错了什么,或者我误读了手册页吗?
干杯
试试
script -c "bash -v ./tests.sh" shell.txt
。该
-v
标志确保在执行时显示命令./tests.sh
。或者,我相信您可以
set -x
在开头./tests.sh
添加set +x
并在结尾添加。但是,这种方法总是会回显命令,因为它们在任何时间运行时./tests.sh
都会被执行。