狭义的shell:
Linux操作系统下的一种命令解释器。
处于用户和操作系统之间,返回操作结果。
处理用户输入,把命令操作系统内核进行处理。
可分为图形化shell和命令行shell。
不同系统有不同的shell,如bash、C shell、windows power shell 等等。
在linux系统中,通常是Bourne Again shell ( 即bash)。
广义的shell:
操作系统可以分为kernel(核)和shell(壳)。分别负责内部核心计算、用户与操作系统打交道。
window下的资源管理器(explorer.exe)是图形化shell,cmd.exe是命令行shell。
window下的完全权限shell是powershell,提供完全操作MS window的功能。
cmd与DOS
cmd是命令行shell,DOS是操作系统。
cmd与DOS的命令很类似。
cmd是window系统的一部分,DOS本身就是操作系统。
cmd命令的权限比DOS小。比如,cmd不能删除、修复window系统,DOS可以。
脚本语言&编程语言
脚本语言是“解释-执行”;编程语言是“编码-编译-链接-执行”。
脚本语言的程序代码既是可执行文件;编程语言的程序代码需要编译后,链接上其他文件才能执行。
每种脚本语言必须要相应的解释执行器,才能正确执行。
Perl、Python、Ruby、JavaScript都是脚本语言,shell也是一种特殊的脚本语言。
执行效率上:脚本语言<编程语言
开发效率上:脚本语言>编程语言
shell与Python
shell更像一种命令行工具。根据用户输入,解释执行,返回执行结果。
Python更像一种编程语言,能够把各种语言融合在一起(胶水语言)。
执行效率:Python>shell
开发效率:shell>python
php与python
php专注于web开发,提供系统API简单封装,易于上手。
python应用范围广,有丰富的数据结构,能跨平台。
都是脚本语言。
一句话:建网站用php,学编程技术用python
补充说明:
可以近似理解为:Linux shell =bash shell;window shell = cmd。
bash功能比cmd强大的多。
window下强大shell是powershell.
参考文章:
1、http://blog.163.com/magicc_love/blog/static/185853662201542121036153/
2、http://blog.csdn.net/monkey_d_meng/article/details/6173055