【发布时间】:2013-12-25 04:17:42
【问题描述】:
我正在尝试实现一个 linux shell,在这一部分中,我正在尝试重复最近使用的命令。这是代码中的示例
if(strcmp(arg[0],"!") == 0 && arg[1] != NULL){
if(strcmp(arg[1], "-1") == 0){
system("!!");
}
我希望用户输入“!-1”时执行最后一个命令我尝试了系统命令“!!”但我收到一个错误“找不到命令”。你能帮忙吗?
提前致谢
【问题讨论】:
-
OP,您以不同的方式问过同一个问题 2 或 3 次。想清楚。你正在写一个shell。您有自己的命令行,用户可以通过该命令行输入命令。您正在尝试模仿 bash 不使用 bash。您将如何存储和检索用户输入的命令行?是否需要写入文件,或者只是将它们存储在某种数据结构中,您可以在 pgm (shell) 运行期间搜索和访问这些数据结构是否足够?
标签: c linux shell command history