Python能代替shell吗?有什么特点?

老男孩IT教育 2021-04-07 14:30:16
linux Python django psutil


Python可以代替shell吗?这是很多人都比较好奇的问题。在这里小编给出的答案是可以,Python是一门简单易学的编程语言,功能强大,可以用来代替shell。

Shell是一个用C语言编写的程序,它是用户使用Linux或者类Unix的桥梁。

Shell既是一种命令语言,又是一种程序设计语言;shell指一种应用程序,这个应用程序提供了一个界面,用户通过这个界面访问操作系统内核的服务。

Python内置的OS模块提供了非常丰富的方法用来与操作系统进行交互,可以深入学习Python的OS模块;Python诞生之初就是为了简化运维工作量用的,最后发展成为了通用语言。

用Python来替代shell是没有问题的,Python简单易学,语法简单,学起来速度很快,还可以用Python来做自动化运维。

Shell的功能Python均可用来实现,而且代码量很少、结构更优、可阅读性更好;而Python可实现的功能shell却不一定能够实现,比如运维中会用到的用于网络通信的socket模块、用于web的Django框架、用于性能采集的psutil模块,而且shell对操作系统的命令依赖性很强,Python可在更大程度上规避这些。

还有,shell中的IDE是很大的问题,虽然Python的原生IDE不怎么样,但是第三方IDE还是功能十分强大的,虽然不能和微软的Virtual Studio相媲美,但也是能完全满足Python开发需求的。

再来讲讲Python效率的问题,Python支持多进程、多线程以及协程,程序并发度是在shell之上的。Python的核心模块基本都是用C来实现的,因此效率比较高,总而言之Python是可以代替shell的,但是shell未必可以代替Python。

版权声明
本文为[老男孩IT教育]所创,转载请带上原文链接,感谢
https://my.oschina.net/u/4938745/blog/5010985

  1. Python brush questions - letter graphics
  2. Python数据分析入门(七):Pandas层级索引
  3. Introduction to Python data analysis (7): Pandas hierarchical index
  4. Python 操作腾讯云短信(sms)详细教程
  5. Python operation Tencent cloud SMS (SMS) detailed tutorial
  6. Python数据可视化,完整版实操指南 !
  7. Python data visualization, full version of the practical guide!
  8. 上手Pandas,带你玩转数据(2)-- 使用pandas从多种文件中读取数据
  9. 上手Pandas,带你玩转数据(1)-- 实例详解pandas数据结构
  10. Using pandas to read data from various files
  11. Hands on pandas, take you to play with data (1) -- detailed explanation of pandas data structure with examples
  12. Pandas数据结构基础用法
  13. Basic usage of pandas data structure
  14. Python读取ini配置文件,保存到对象属性
  15. Python reads the INI configuration file and saves it to the object properties
  16. Foundation of Python: classes in Python
  17. python刷题-闰年判断
  18. python刷题-01字串
  19. How to judge leap year
  20. Python brush title-01 string
  21. 安装python
  22. 按尺寸切片pandas数据集DataFrame到多个文件
  23. Install Python
  24. Slice the pandas dataset dataframe to multiple files by size
  25. python 求最大值、最小值、平均值
  26. Finding maximum, minimum and average in Python
  27. 认识Python解释器和PyCharm编辑器
  28. Know Python interpreter and pycharm editor
  29. Python 小数据池和代码块缓存机制
  30. Python small data pool and code block caching mechanism
  31. python刷题-序列求和
  32. python刷题-圆的面积
  33. Sequence summation in Python
  34. The area of a circle
  35. Python functions, advanced syntax and usage
  36. Teach you to crawl novels in Python! Who can pay for novels these days!
  37. Python入门学习之:10分钟1500访问量
  38. Introduction to Python: 1500 visits in 10 minutes
  39. 数据分析之Pandas合并操作总结
  40. OpenCV-Python 雪花飘落特效
  41. Pandas merge operation summary of data analysis
  42. Opencv Python snowflake falling effect
  43. python logging模块“另一个程序正在使用此文件,进程无法访问。”问题解决办法
  44. Python logging module "this file is being used by another program and cannot be accessed by the process." Problem solving
  45. Mac 下python3 [SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed 解决方法
  46. Python 3 [SSL: Certificate] on MAC_ VERIFY_ Failed] certificate verify failed solution
  47. Python学习之解决python下载第三方依赖速度慢的问题
  48. Python learning to solve the problem of slow download speed of third party dependence on Python
  49. python操作Excel文件报lrd.biffh.XLRDError
  50. How to operate excel file with Python lrd.biffh.XLRDError
  51. 2021的挑战与机遇,今年Python数据分析岗位会很香!
  52. The challenge and opportunity of 2021, python data analysis post will be very popular this year!
  53. 【C++简明教程】Python和C++指定元素排序比较
  54. Comparison of Python and C + + specified element sorting
  55. Python Flask使用Nginx做代理时如何获取真实IP
  56. How to get real IP address when Python flash uses nginx as proxy
  57. Python培训出来好找工作吗?好找工作的关键是什么?
  58. Is Python training easy to find a job? What is the key to finding a good job?
  59. 从零开始学python | 什么是Python JSON?
  60. Learn Python from scratch | what is Python JSON?