Advertisement

Myshell:一个由C语言编写的Linux系统下的Shell源代码。

  •  5星
  •     浏览量: 0
  •     大小:None
  •      文件类型:None


简介:
该文件采用Linux的gz压缩格式,在Windows操作系统上可以使用WinRAR等工具进行解压。我个人创作的操作系统上机作业(包含源代码),旨在实现一个简化的Linux shell程序(一个简单的myshell)!参考William Stallings的著作《Operating Systems - Internals and Design Principles》中的原题要求:该shell程序应具备以下内部命令功能:cd <目录> - 用于更改默认的工作目录为指定的<目录>。若未提供<目录>参数,则应显示当前目录;如果指定的目录不存在,则应报告相应的错误信息。此命令还应更新PWD环境变量。clr - 用于清除屏幕内容。dir <目录> - 用于列出指定<目录>中的文件和文件夹内容。environ - 用于列出所有环境变量字符串。echo <注释> - 用于在显示器上显示指定的<注释>,并在其后添加一个新行(多个空格或制表符可能被简化为单个空格)。help - 用于以more过滤器的形式显示用户手册。pause - 暂停shell操作,直到按下Enter键。quit - 用于退出shell程序。shell环境应包含 shell=<路径>/myshell,其中 <路径>/myshell 是 shell 可执行文件的完整路径(避免硬编码回用户目录的路径,而是使用执行时所在的路径)。

全部评论 (0)

还没有任何评论哟~
客服
客服
  • CLinux环境中myshell
    优质
    本项目为在Linux环境下用C语言开发的一个简单命令行解释程序(myshell),旨在模拟基础bash功能,学习操作系统和C语言编程。 基本功能包括:1. 基本的内部命令,例如 cd、ls 和 pwd;2. 能够处理后台程序;3. 具备管道和重定向功能,比如可以执行 who | wc -l 进行测试;4. 支持多条命令以分号分隔,并能过滤掉无效的空格和制表符等。
  • CShell
    优质
    这段简介描述了一个使用C语言开发的Shell程序的源代码。该项目提供了一个命令行界面,用户可以通过输入命令与系统进行交互,支持常见的shell功能和自定义脚本编写。 用C语言写的shell源码已经基本完成,目前正在进行shell脚本的开发工作。欢迎有兴趣的同学一起参与,并提出宝贵的意见和建议。
  • CShell程序及PDF报告
    优质
    本项目包含一个使用C语言开发的简易Shell程序完整源代码以及一份详细介绍设计思路、功能实现和测试过程的PDF技术文档。 ZJU 2020年短学期Linux程序设计课程大作业用C语言实现了一个shell程序的基本功能,并包括管道、重定向和后台执行等功能。
  • LinuxCShell
    优质
    《Linux下的C语言Shell编程》是一本指导读者在Linux环境中使用C语言进行Shell脚本开发的技术书籍,深入浅出地讲解了如何编写高效、灵活的命令行工具和自动化脚本。 自己编写的一个shell实现了对“|” “&” 的支持,并增加了cd命令的功能。如果有问题可以反馈给我。
  • 【原创】我Linux Shell:用C操作程序
    优质
    本作品为作者原创,是一段用C语言编写以供Linux Shell使用的源代码。旨在帮助用户更好地与操作系统进行交互。 文件格式为Linux下的gz压缩包,在Windows下可以用WinRAR解压。这是本人原创的操作系统上机作业(源代码),自己编写了一个简单的Linux shell(a simple myshell)。该任务源自William Stallings所著的《操作系统--内核与设计原则》一书中的题目。 Shell必须支持以下内部命令: - `cd `:更改当前默认目录为。如果未提供参数,则报告当前目录。若目标目录不存在,应适当报错,并且需要改变PWD环境变量。 - `clr`:清除屏幕内容。 - `dir `:列出中的所有文件和子目录(等同于Linux下的ls命令)。 - `environ`:显示所有的环境字符串。 - `echo `:在屏幕上显示,并在其后添加一个新行。多个空格或制表符可以被压缩为单个空格。 - `help`:使用more过滤器展示用户手册(类似于Linux中的man命令)。 - `pause`:暂停shell操作直到回车键被按下。 - `quit`:退出shell。 Shell环境应该包含以下内容: ``` shell=/myshell ``` 其中/myshell是执行该shell可执行文件的完整路径(而不是固定指向你的目录,而是从其被执行的位置)。
  • LinuxCMP3播放器
    优质
    这是一段在Linux环境下开发的C语言程序源代码,用于实现基本的MP3音频文件播放功能。 该播放器具备以下功能: - 识别本地MP3歌曲文件,并根据路径将其添加到播放列表。 - 支持读取并显示现有的播放列表信息。 - 提供创建、删除及编辑自定义播放列表的功能,用户可以自由地将已存在的音乐加入或移除指定的播放列表中。 - 用户能够查看当前设备上所有被收录进系统的歌曲和各个播放列表内的曲目详情。 - 播放器还具备暂停、停止以及继续三种基本操作模式,并提供默认、全部循环(即连续重复整个歌单)、单曲循环及随机播放四种不同的音乐播放方式供选择使用。 - 系统会实时更新并显示当前的运行状态,包括正在播放中的歌曲信息及其所属列表的基本情况等。 - 该程序能够记忆用户的操作记录,在关闭软件时自动保存所有设置,并在下次启动时恢复到之前的状态。 具体来说: - 播放文件模块负责扫描指定目录下的MP3音频文件并列出这些音乐作品的相关属性; - 播放列表模块则涉及创建新的播放清单、向其中添加或移除歌曲的管理任务,以及对现有歌单执行编辑操作的能力; - 控制面板部分提供了显示系统相关信息及接收用户指令的功能界面; - 而核心的音频处理单元负责实际完成音乐文件的回放工作,并支持上述提到的各种控制选项。
  • C而成C译器
    优质
    这是一段用纯C语言编写的C语言编译器的完整源代码,适用于对编译原理和C语言深入学习的研究者和技术爱好者。 一个完整的C语言编译器的C语言源码,并附带英文帮助文档,对于学习编译技术的程序员来说具有很好的参考价值。该编译器包含Linux应用,具备完整的语法检查、语义分析、中间代码生成及链接功能。
  • LinuxC自己模拟Shell程序
    优质
    本教程将指导您在Linux环境下使用C语言从零开始开发一个简单的命令行解释器(模拟Shell),帮助深入理解操作系统与编程原理。 编写一个C程序使用UNIX的fork()等系统调用实现以下功能: 1. 实现Shell的基本功能:打印提示符;接受并分析命令行(滤去无效空格、tab符号以及换行符);执行命令时具备出错处理机制,并在输入exit或bye时退出;返回父进程。 2. 处理后台任务,无需使用wait()等待子进程结束。 3. 支持多行命令的解析和执行(通过分析并处理命令中的分号)。 4. 使用dup(), pipe()系统调用实现输入输出重定向。
  • Linux环境C学生管理
    优质
    本学生管理系统采用C语言开发,适用于Linux环境。系统功能全面,包括学生信息录入、查询、修改和删除等操作,适合学习与实际应用。 在Linux环境下使用C语言编写的学生管理系统适合初学者学习。