- 浏览: 461133 次
- 性别:
- 来自: 广州
文章分类
- 全部博客 (538)
- C/C++ Primer (69)
- Objective-C Primer (102)
- Python Primer (19)
- JavaScript Primer (1)
- Java Primer (37)
- PHP Primer (17)
- 泛 Linux (37)
- Shell Script (21)
- APUE (21)
- UNP__1&2 (19)
- NetWork (7)
- Oracle周边 (38)
- Mysql里边 (6)
- Windows技 (9)
- 简单算法 & 数据结构 (14)
- 设计模式 (6)
- GTK历程 (12)
- 工具使用 (25)
- 杂事 (23)
- 一些概念 (17)
- Web方面 (10)
- myCodeTools (9)
- ^未 竟$ (13)
- 硬件通信 (2)
- Games (1)
最新评论
http://linux.chinaunix.net/bbs/thread-1166141-1-7.html
练手不错
Unix shell是unix的命令解释程序,用于让用户以一种友好的方式运行程序和执行命令。本课程设计要求学生在linux下写一个命令解释程序,实现Ksh最基本的功能。即:允许用户打入一个可执行的程序的名字以及其命令行参数,执行这个程序。同时实现一部分内部命令(比如cd,详见要实现的命令),以及输入输出重定向等功能。具体功能要求如下:
基本功能要求
1)利用C语言在Linux上设计一个简单的命令解释程序,完成如下功能:
dir <directory> 列目录
cd <>改变当前目录
pwd 显示当前目录名
md <directory> 创建一个目录
copy <source> <target>复制文件和目录
find 在指定的目录及其子目录中查找特定的文件
more <file>一页一页地显示文件
date 显示当前日期
time显示当前时间
ren <old name> <new name>重命名一个文件或目录
del <file or directory>删除一个文件和目录
exit 退出命令解释程序。
执行一个程序
2)命令解释程序的提示符为:@
3)命令解释程序把命令行解释为内部命令或外部命令(要执行的程序)。内部命令直接在命令解释程序中处理,外部命令的执行则由命令解释程序通过fork()创建一个子进程,然后在子进程中调用exec执行一个程序。
4)命令解释程序应能够支持输入输出重定向。
选作内容:
1) 命令解释程序支持后台运行程序。
2) 命令解释程序支持管道。
3) 命令解释程序不能被ctrl+c打断。
课程设计要求:
1) 命令解释程序的实现环境是linux,编程语言使用C语言。
2) 整个程序必须严格经过测试,完整所有基本功能。源程序应有较详尽的注释。
3) 程序编写应有良好的风格。
4) 程序编制中不得使用system()系统调用。
5) 整个系统的源代码应由多个文件组成,所有源程序文件及其makefile用tar命令打成一个包,放在指定的目录下。
6) 设计报告应包含如下内容:a)系统的总体设计和详细设计 b) 你的命令解释程序详细使用手册 c) 所有源程序清单 d) makefile
7) 设计提交的内容应包括:a)设计报告(打印版) b)装有源程序、设计报告的光盘一张 c)所有源程序文件及其makefile放在指定的服务器的指定目录下。
8) 不得抄袭,一经发现即给予不及格。
评分标准:
1) 内部命令实现 30分
2) 外部命令的执行 10分
3) 输入输出重定向 20分
4) 设计报告 15分
5) 使用手册 10分
6) 注释及良好的程序设计风格 15分
7) 分数在75分以上者,视选作内容作得情况酌情加分。但分数在75分以下者选作内容不予考虑。
主要参考书目:UNIX环境高级编程
可能用到的系统调用:
open(),close(),read(),write(),creat()
dup()
fork()
execl(),execv(),execle(),execve(),execlp(),execvp()
wait(),waitpid()
chdir()
opendir(),readdir(),rewinddir(),closedir()
rmdir(),mkdir()
练手不错
Unix shell是unix的命令解释程序,用于让用户以一种友好的方式运行程序和执行命令。本课程设计要求学生在linux下写一个命令解释程序,实现Ksh最基本的功能。即:允许用户打入一个可执行的程序的名字以及其命令行参数,执行这个程序。同时实现一部分内部命令(比如cd,详见要实现的命令),以及输入输出重定向等功能。具体功能要求如下:
基本功能要求
1)利用C语言在Linux上设计一个简单的命令解释程序,完成如下功能:
dir <directory> 列目录
cd <>改变当前目录
pwd 显示当前目录名
md <directory> 创建一个目录
copy <source> <target>复制文件和目录
find 在指定的目录及其子目录中查找特定的文件
more <file>一页一页地显示文件
date 显示当前日期
time显示当前时间
ren <old name> <new name>重命名一个文件或目录
del <file or directory>删除一个文件和目录
exit 退出命令解释程序。
执行一个程序
2)命令解释程序的提示符为:@
3)命令解释程序把命令行解释为内部命令或外部命令(要执行的程序)。内部命令直接在命令解释程序中处理,外部命令的执行则由命令解释程序通过fork()创建一个子进程,然后在子进程中调用exec执行一个程序。
4)命令解释程序应能够支持输入输出重定向。
选作内容:
1) 命令解释程序支持后台运行程序。
2) 命令解释程序支持管道。
3) 命令解释程序不能被ctrl+c打断。
课程设计要求:
1) 命令解释程序的实现环境是linux,编程语言使用C语言。
2) 整个程序必须严格经过测试,完整所有基本功能。源程序应有较详尽的注释。
3) 程序编写应有良好的风格。
4) 程序编制中不得使用system()系统调用。
5) 整个系统的源代码应由多个文件组成,所有源程序文件及其makefile用tar命令打成一个包,放在指定的目录下。
6) 设计报告应包含如下内容:a)系统的总体设计和详细设计 b) 你的命令解释程序详细使用手册 c) 所有源程序清单 d) makefile
7) 设计提交的内容应包括:a)设计报告(打印版) b)装有源程序、设计报告的光盘一张 c)所有源程序文件及其makefile放在指定的服务器的指定目录下。
8) 不得抄袭,一经发现即给予不及格。
评分标准:
1) 内部命令实现 30分
2) 外部命令的执行 10分
3) 输入输出重定向 20分
4) 设计报告 15分
5) 使用手册 10分
6) 注释及良好的程序设计风格 15分
7) 分数在75分以上者,视选作内容作得情况酌情加分。但分数在75分以下者选作内容不予考虑。
主要参考书目:UNIX环境高级编程
可能用到的系统调用:
open(),close(),read(),write(),creat()
dup()
fork()
execl(),execv(),execle(),execve(),execlp(),execvp()
wait(),waitpid()
chdir()
opendir(),readdir(),rewinddir(),closedir()
rmdir(),mkdir()
发表评论
-
execl
2010-10-28 11:13 846#include <stdio.h> ... -
dup2-close-fd
2010-10-28 10:54 817int main(int argc, char *argv ... -
Chapter 16__套接字
2010-10-25 11:39 589AF_INET、TCP、UDP、SCTP 报文界限 soc ... -
pthread_mutex_lock Test
2010-10-22 15:43 975#include <stdio.h> #in ... -
Chapter 14__高级IO
2010-10-20 11:45 719struct flock { short ... -
Chapter 15__进程间通信
2010-10-19 15:15 670- - 纯属抄书。。。 IPC(InterProcess ... -
APUE一栏入口
2010-10-14 15:25 756《UNIX环境高级编程》 《Advanced Programm ... -
Chapter 3__文件IO
2010-10-14 14:51 24int fcntl(int filedes, int cm ... -
Chapter 14
2010-10-14 09:01 7111、永远阻塞的调用有哪些? 阻塞,直到函数调用完成为止, ... -
Chapter 5__标准IO库
2010-10-12 11:56 6061)缓冲的本质是减少read和write调用的次数,也就是物 ... -
Chapter 4__文件和目录
2010-10-09 17:34 702一些概念: 主、次设备号 主设备号标识设备驱动程序 次设备号 ... -
Chapter 3__文件IO
2010-10-08 15:47 659无聊,贴些本章的关键字: 一、空洞文件、预读技术(read ... -
Chapter 1__ls DIR And struct dirent
2010-10-08 10:25 58遍历目录 #include "aupe.h& ... -
stdarg.h 可变长参数
2010-09-30 12:13 759http://zh.wikipedia.org/zh-sg/S ... -
Chapter 13__守护进程Daemon
2010-09-29 14:43 627为什么守护进程会从进程中成为一类,相对普通进程有什么区别? ... -
Chapter 12__线程控制
2010-09-29 09:53 627★12.2线程限制,sysconf函数,增强可移植性; ★ ... -
Chapter 11__线程
2010-09-28 09:35 681★线程的执行环境 线程ID、栈 一组寄存器值 调度优先级和策 ... -
Chapter 10__信号
2010-09-27 14:06 743SIGHUP解说,有关终端和 ... -
Chapter 9__进程关系
2010-09-27 12:06 753------------------------------ ... -
Chapter 8__进程控制
2010-09-19 13:58 721//一些函数: pid_t getpid(void); ...
相关推荐
在这个`Shell_NotifyIcon_practice.rar`压缩包中,包含了一个基于VS2017编写的C++窗口程序示例,用于演示如何使用`Shell_NotifyIcon()`来创建和管理这些图标。 `Shell_NotifyIcon()` 函数是一个关键的Windows API...
/bin/bash`作为首行,声明使用Bash解释器。接着,你可以写入命令,每个命令之间用换行符分隔。例如,`echo "Hello, World!"`会打印出"Hello, World!"。 2. **变量**:在Shell中,可以创建和使用变量存储数据。如`...
& Safeguaring Practice Manual”(以下简称“PRENSAP手册”)是一份关于过程工程与安全防护实践的手册。虽然提供的部分内容难以辨识,但我们可以基于标题、描述和标签来展开相关知识点的讨论。 ### Shell Process...
/usr/bin/env zsh`开头,告诉系统使用哪个Shell解释器来执行脚本。 2. **变量声明**:Shell脚本中的变量用于存储数据,可以是文本、数字或其他复杂数据类型。例如,`name="John Doe"`。 3. **命令**:Shell脚本的...
T32 Practice脚本语言培训 T32 Practice脚本语言培训是Lauterbach GmbH提供的一种Script Language培训课程,旨在帮助用户掌握TRACE32脚本语言的编写和应用。该课程涵盖了Script Language的基础知识、脚本语言的使用...
SQL Practice Problem.pdf SQL Practice Problem.pdf SQL Practice Problem.pdf SQL Practice Problem.pdf
docker_practice.pdfdocker_practice.pdfdocker_practice.pdf
这一节提供了一个具体的案例研究,展示了如何实现一个简单的命令行解释器(shell)。 ##### 3.4 进程间通信案例研究 进程间通信(IPC)是操作系统中的一个重要主题,用于解决进程间的协作问题。 #### 五、并发性 第...
Security Patterns in Practice describes lots of patterns to solve the real problems
"shellscript-practice"这个项目显然旨在提供一个实践平台,帮助用户通过实际操作来提升Shell脚本编写技能。 Shell脚本的基本元素包括变量、条件语句、循环结构、函数、输入/输出重定向以及命令行参数。以下是对...
标准Practice脚本的扩展名是.cmm,因此有人也称之为cmm脚本 Practice脚本是Lauterbach公司提供的一种脚本语言,运用于其TRACE32软件当中,非常容易上手、并且功能强大。 我在文章...
【标题】:“SAP Best Practice 概览” 【描述】:SAP Best Practice 是SAP公司提供的一套全面的方法论和预配置的解决方案,旨在帮助企业在实施SAP系统时能够快速、有效地达到业务最佳状态。它集合了SAP多年的行业...
其中,-n表示suppress automatic printing of pattern space2.去除空行更多时候,我们需要做的是去除空行,下面看看去除
Java Concurrency in practice
通过以上知识点的概述,我们可以看出“Graphics Shaders: Theory and Practice 第二版”是一本旨在提供全面着色器技术教育的书籍,不仅涉及理论知识,还包括了实践指导,对于希望深入了解并掌握着色器技术的读者来说...
shell脚本练习题集锦 本资源提供了一系列的 shell 脚本练习题,涵盖了基本的 shell 编程概念和技术,旨在帮助用户掌握 shell 编程的基本技能和思想。下面是本资源中涉及到的知识点: 1. 变量的使用:在shell脚本中...