Xshell : Python实现的简单shell

原项目为:https://github.com/supasate/yosh

Xshell对原项目进行了重构(面向对象)和扩展(支持重定向,管道,&)
github地址:https://github.com/yangzhezjgs/Xshell

支持Python版本:2.7 3.5以上
主要使用Python标准库,需要安装prompt_toolkit

++++++2017.9.24更新
(1)用prompt_toolkit替代readline获取命令命令行信息,支持上下键获取命令历史,输入提示,自动补全等功能。
(2)删除了history命令。
(3)因为使用了prompt_toolkit,prompt没有颜色
(4)修复了&和管道命令会出现的bug.
演示:
Xshell : Python实现的简单shell_第1张图片

++++++++

使用:

git clone https://github.com/yangzhezjgs/Xshell
cd Xshell
python  Xshell.py

支持功能:
(1)shell基本命令
Xshell : Python实现的简单shell_第2张图片
(3)内置命令
支持history,cd,getenv,exit四条内置命令

(2)重定向
Xshell : Python实现的简单shell_第3张图片
(3)管道
Xshell : Python实现的简单shell_第4张图片
(4)&后台启动
这里写图片描述
注意上面三种命令之间需要加空格,并且不支持类似who|sort > 1.txt的复合指令

存在的问题:
管道,&后台启动指令显示存在格式上的问题
内置的exit指令可能会导致bug,原因暂时不明

学习要点:
(1)Python标准库常用模块sys,os,subprocess等的使用
(2)shell的原理
(3)重定向,管道的原理

你可能感兴趣的:(python)