2 sinat 34981618 sinat_34981618 于 2017.01.08 16:45 提问

linux下结合c编程交互式shell的设计

功能实现:模拟实现一个简单的交互式shell,取名为Myshell。为了得到一个命令行,Myshell执行一个阻塞性操作,直到用户根据提示符输入一条命令,Myshell通过gtes()函数获得用户输入的命令行,并对输入进行解析。
1、支持程序后台运行。(判断是否包含&字符)
2、支持重定向(判断是否包含<、>字符)
3、支持设置搜索路径(判断是否包含|字符)
4、支持内置命令:cd 、exit、 path
不允许使用system、exec系列函数

1个回答

dabocaiqq
dabocaiqq   2017.01.14 23:06
Csdn user default icon
上传中...
上传图片
插入图片
准确详细的回答,更有利于被提问者采纳,从而获得C币。复制、灌水、广告等回答会被删除,是时候展现真正的技术了!
其他相关推荐
简单的交互式shell(模似shell命令操作)
/**  * @file myshell.c  * @Synopsis    * 简单的交互式shell  * 用户输入一行命令 实现和shell 进程一样的效果。。  * example:  * cat demo1.txt  * ps -e  * ls -lath  * top  * who  * ....  * 输入上面这些命令和shell 实现一样的效果。  *
shell linux下编程
shell linux下编程shell linux下编程shell linux下编程shell linux下编程shell linux下编程shell linux下编程shell linux下编程shell linux下编程shell linux下编程shell linux下编程shell linux下编程shell linux下编程
Linux C实现简单的shell
Linux C下实现简单的Shell 宗旨:技术的学习是有限的,分享的精神的无限的。 【需求描述】 用各种C函数实现一个简单的交互式Shell: 1、给出提示符,让用户输入一行命令,识别程序名和参数并调用适当的exec函数执行程序,待执行完成后再次给出提示符。 2、识别和处理以下符号:简单的标准输入输出重定向( 和>),先dup2然后exec。管道(|): She
用c语言的实现一个简单的交互式shell
处理思想: 1.获取命令行
交互式编程
习惯了C++的编程模式:编辑,保存,编译,运行和调试之后,就忘了其实还有另一种编程模式--交互式编程。很多脚本语言都提供类似的控制台,直接输入脚本语句,回车就执行了,结果立即显示出来,而不用经过复杂的保存和编译阶段。 交互式编程,对于简单的尝试性的操作是很方便的,比如测试一个函数的用法。因为输入语句之后,就可以立即得到结果,你就知道问题出在哪里,立即就可以修正,开发的速度于是得到了极大的提高。想想
用shell脚本写的一个交互式linux命令行工具
#!/bin/bash ################ 宏定义 ########################## WORKDIR=$(pwd) LOG_FILE=${WORKDIR}/sfs_serv_tool.log TMP_SQL_TABLE_FILE="./tmp_clean_table.sql" DB_NAME_PREFIX="dfs_proxy_db_
Shell程序设计(一)—基础知识
其实作为命令语言交互式地解释和执行用户输入的命令只是shell功能的一个方面,shell还可以用来进行程序设计,它提供了定义变量和参数的手段以及丰富的程序控制结构。使用shell编程类似于DOS中的批处理文件,称为shell script,又叫shell程序或shell命令文件。   1.shell基本语法   shell的基本语法主要就是如何输入命令运行程序以及如何在程序之间通过shell的
linux c/c++ 程序设计(二)shell程序编程
shell 其实是一个脚本语言,里面有一整套的东西,一般如果不是在linux下编程很少用到。本人有一整套基础代码可以让初学者学习。 这是我在2014年学习shell编程时写的一套代码,需要的可以在我git的找到。git地址稍后贴出 希望可以帮到大家
两种Linux下非交互式命令的实现
一、概述在Linux环境,有多种实现自动化的脚本语言,如Shell、Python、Perl、Tcl等。Shell语言因与Shell外壳结合紧密,是最常见的实现自动化的脚本语言。同时,在Linux环境中存在大量功能单一的小工具——通常它们在指定输入后,立即就可获得输出,例如echo、cat等字符串/文本打印工具,又或者是如sed、awk等最常用的字符串编辑工具。通过编写Shell脚本,我们可以反复利
Linux如何在交互式shell脚本中创建对话框
当你在终端环境下安装新的软件时,你可以经常看到信息对话框弹出,需要你的输入,比如:RHEL/CentOS自带的setup,对话框的类型有密码箱、检查表、菜单等等。他们可以引导你以一种直观的方式输入必要的信息,使用这样的用户友好的对话框的好处是显而易见的。如下图所示:当你写一个交互式shell脚本,你可以使用这样的对话框来接受用户的输入。whiptail可以在shell脚本中创建基于终端的对话框,消息