音频片段:需要 Adobe Flash Player(9 或以上版本)播放音频片段。 点击这里下载最新版本。您需要开启浏览器的 JavaScript 支持。
A Winter Story — from Love Letter OST
1.IO重定向功能分析
IO重定向也是Shell的基本功能之一,这篇文章http://www.ibm.com/developerworks/cn/linux/l-iotips/比较全面地介绍了Linux Shell的IO重定向功能。总结一下,IO重定向的大致格式是这样:
cmd [src | &] (> | < | >> ) (& num|-) | dst
貌似写得有点复杂(我不是故意的)。解释一下,整个重定向语句由三部分组成:
Read the rest of this entry »
在写完一个最简单的命令解释器以后,我给自己的shell起了个名字——jdsh(JackalDire Shell)。
本来以为加入后台执行不是什么难事,但是认真想了一下要处理好一个字符‘&’不是一般的麻烦,各种问题接踵而至,于是决定先找点轻松的活干。
1.加入shell内建命令
Read the rest of this entry »
晓之车 ~piano version~ — 梶浦由记
音频片段:需要 Adobe Flash Player(9 或以上版本)播放音频片段。 点击这里下载最新版本。您需要开启浏览器的 JavaScript 支持。
寒假在做Linux Kernel Project这本书上的习题,第二章的练习是写一个简单的shell,看了一下要求觉得这个练习很有价值,涉及到很多Linux C Programming的知识,所以准备认真地做一下。
最终的目标如下:
- 命令解释执行
- 支持后台执行(&)
- 支持输入输出重定向(< , >, >>)
- 支持管道IPC
- 内建命令cd, pwd, exit等
可见写一个shell并不是一件简单的事,从简单的一步一步做起吧,手头有APUE,一边做一边查。
Read the rest of this entry »