Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/c/66.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C linux终端中的shell程序_C_Linux_Shell_Terminal_Cursor - Fatal编程技术网

C linux终端中的shell程序

C linux终端中的shell程序,c,linux,shell,terminal,cursor,C,Linux,Shell,Terminal,Cursor,我想在linux终端上用C编写一个shell,就像“bash”一样,所以我使用fork()和execvp()来启动任何编写的程序 问题是我想支持上下箭头,这意味着当用户点击Up时,最后一行被打印出来等等,但是当我使用通常的printf时,我不能在打印文本周围移动光标,所以我不能修改它,它也不会被作为输入 我尝试使用getch()和“\b”选项移动光标,但它仍然不允许我修改文本,也不允许我将整行作为输入读取 有什么想法吗?如果你使用它,会对你有很大帮助! 希望它对你有帮助。如果你使用它,它会对你有

我想在linux终端上用C编写一个shell,就像“bash”一样,所以我使用fork()和execvp()来启动任何编写的程序 问题是我想支持上下箭头,这意味着当用户点击Up时,最后一行被打印出来等等,但是当我使用通常的printf时,我不能在打印文本周围移动光标,所以我不能修改它,它也不会被作为输入 我尝试使用getch()和“\b”选项移动光标,但它仍然不允许我修改文本,也不允许我将整行作为输入读取 有什么想法吗?

如果你使用它,会对你有很大帮助! 希望它对你有帮助。

如果你使用它,它会对你有很大帮助! 希望它对你有帮助。

如果你使用它,它会对你有很大帮助! 希望它对你有帮助。

如果你使用它,它会对你有很大帮助!
希望有帮助。

谢谢,但你确定这是在c库中吗?我在手册页上找不到它!我有ubuntu 14.04是的,你可能需要安装它,我两年前做了和你一样的项目。在您的终端中编写:sudo apt get install libncurses5 dev libncursesw5 devthanks,但您确定它在c库中吗?我在手册页上找不到它!我有ubuntu 14.04是的,你可能需要安装它,我两年前做了和你一样的项目。在您的终端中编写:sudo apt get install libncurses5 dev libncursesw5 devthanks,但您确定它在c库中吗?我在手册页上找不到它!我有ubuntu 14.04是的,你可能需要安装它,我两年前做了和你一样的项目。在您的终端中编写:sudo apt get install libncurses5 dev libncursesw5 devthanks,但您确定它在c库中吗?我在手册页上找不到它!我有ubuntu 14.04是的,你可能需要安装它,我两年前做了和你一样的项目。在终端中编写:sudo apt get install libncurses5 dev libncursesw5 devNote必须存储过去的历史记录并支持在当前命令行上进行编辑。查看GNU
readline
库是否可以帮助您(允许)。如果没有,那么TermFo(而不是termcap)和诅咒或ncurses可能是你应该使用的-除非你有一个真正的虐待狂老师甚至禁止使用,在这种情况下,你面前有一个巨大的任务(嗯,很多工作你可能不应该做)。谢谢,但我已经提交了作业,不支持箭头:\。。注意,您必须存储过去的历史并支持在当前命令行上进行编辑。查看GNU
readline
库是否可以帮助您(允许)。如果没有,那么TermFo(而不是termcap)和诅咒或ncurses可能是你应该使用的-除非你有一个真正的虐待狂老师甚至禁止使用,在这种情况下,你面前有一个巨大的任务(嗯,很多工作你可能不应该做)。谢谢,但我已经提交了作业,不支持箭头:\。。注意,您必须存储过去的历史并支持在当前命令行上进行编辑。查看GNU
readline
库是否可以帮助您(允许)。如果没有,那么TermFo(而不是termcap)和诅咒或ncurses可能是你应该使用的-除非你有一个真正的虐待狂老师甚至禁止使用,在这种情况下,你面前有一个巨大的任务(嗯,很多工作你可能不应该做)。谢谢,但我已经提交了作业,不支持箭头:\。。注意,您必须存储过去的历史并支持在当前命令行上进行编辑。查看GNU
readline
库是否可以帮助您(允许)。如果没有,那么TermFo(而不是termcap)和诅咒或ncurses可能是你应该使用的-除非你有一个真正的虐待狂老师甚至禁止使用,在这种情况下,你面前有一个巨大的任务(嗯,很多工作你可能不应该做)。谢谢,但我已经提交了作业,不支持箭头:\。。不过我会努力的