我正在编写一个在Linux系统中运行的C程序。 该程序将一些Linux命令传递给shell并使用txt文件接收结果。
system("last >> last.txt");
system("ls -s >>ls.txt");
但我失败了“历史”,因为有人告诉我这不是命令,而是建筑物。
那么有什么方法可以像其他人那样传递“历史”吗?
谢谢!
答案 0 :(得分:2)
您也可以使用shell实际调用内置命令:
system("bash -e \"history >> history.txt\"");
将"bash"
更改为首选shell。
答案 1 :(得分:1)
“history”相当于“cat~ / .bash_history”,所以另一种方法是使用:
system("cat ~/.bash_history");
答案 2 :(得分:0)
根据使用的shell,您可以查看历史文件。
例如:〜/ .bash_history或〜/ .zsh_history。