bash 和 python

linux的基本组件,哪个都是千锤百炼。还很少有被取代过的。这些基本组件就包括各种shell。

python开始是用于运维。后来发展成通用语言。python可以解决shell之类的工具编程难,同时可读性差的问题。当然里面的设计思想还有很多,不列举。但是python开始的目标就不是取代shell。

但是ruby有这个想法。ruby有些工具明显的想代替应用程序的控制台。真是很有理想的语言。

作为一个编程语言,而不是一个命令行工具。python不具备shell这样的强的交互,通用性,小巧 ,权限管理,批处理,复杂的管道,安全,高效等等优点。

不过shell支持的脚本很多已被python代替。所以在linux的系统初始化,运维管理中大量可以看到python脚本。 对于一个python老手来说,用shell脚本编程不如直接写个python脚本。完全 没有必要学习两套编程方式。

至我python用了10几年了,一直觉着写一个超过50行的shell脚本没有必要。有python足够了。偶尔写个十几行的shell比较常用。再多就要用python了。

在有些特殊的操作系统里,GUI被重新设计过,其中某个操作系统甚至没有什么命令行,几乎完全 图形化。 这些操作系统里没有shell的地位。它被取代了。 

同样,如果我们用python写一个操作系统,显然shell不需要了http://zhidao.baidu.com/link?url=UMAcc4iqq3QSsGc41Ga80gAebMgH6p_PrKjpxTrzUuALRto6sKJx4_6pohCxt0PSyCoytPKcZD2cERIXXmIToqnKdIIs0i1-CZA8Sw7qe7W
时间: 2024-11-03 16:39:23

bash 和 python的相关文章

bash shell + python简单教程,让你的mac/linux终端灰起来~

前提条件:已经安装python,命令行支持bash 在bash_profile中添加 function ccolor { python /Users/xirtam/Documents/tools/ccolor.py $1 $2 $3 } 编写其中的python文件 import sys print(hex(int(sys.argv[1])<<16|int(sys.argv[2])<<8|int(sys.argv[3]))) 然后将执行 source ~/.bash_profile

用 Python 替代 Bash 脚本(转)

add by zhj: 其实作者是想说用Python来做那些Bash实现起来比较麻烦的部分,即将Bash与Python结合使用. 英文原文:http://www.linuxjournal.com/content/python-scripts-replacement-bash-utility-scripts 作者:Richard Delaney 翻译原文:http://www.oschina.net/translate/python-scripts-replacement-bash-utility

Python函数的冒泡排序、递归以及装饰器

函数的冒泡排序: 本质是,让元素换位置,逐个比较最终排序. 例1:实现a1,a2值互换: a1 = 123 a2 = 456 temp = a1 a1 = a2 a2 = temp print(a1) print(a2) 结果: 456 123 冒泡排序: #!/bin/bash/env python # -*- coding:utf-8 -*- li = [22,1,5,4,3,66,22,12,34,21] for j in range(1,len(li)): for i in range(

linux下多版本python环境配置

1. 依赖pyenv安装使用git # yum install git -y # yum -y install gcc make patch gdbm-devel openssl-devel sqlite-devel readline-devel zlib-devel bzip2-devel 2. 创建用户python # useradd python # passwd python 3. 使用python用户登录 su – python 4. 开始部署pyenv pyenv安装方式: pyen

Python第二次写的代码

#!/bin/bash/env python # -*- coding:utf-8 -*- #function:将大于66值保存在第一个字典键中,小于66保存在第二个 i1 = [11,22,33,44,55,66,77,88,99,90] dict = { 'k1': [], 'k2': [], } for i in i1: if i <= 66: dict['k1'].append(i) else: dict['k2'].append(i) print(dict) 结果:{'k1': [11

python三级菜单

需求: 编写三级菜单     1.菜单需求:         一级菜单:            北京                                  山西         二级菜单:    朝阳                昌平               长治           大同         三级菜单:三里屯    工体       沙河  西二旗       潞城  黎城     阳高县  左云县     2.任何一级都可以输入b返回上一级,输入q退出.    

python编写登录接口

python编写登录接口 一.需求 编写登录接口: 1.输入用户名和密码登录 2.输错三次锁定账户 3.下次登录还是上次的账户,提示锁定,直接退出(用到文件读写) 4.成功 后显示登录成功 二.需求流程图 三.代码示例 例1: #!/bin/bash/env python #_*_ coding:utf-8 _*_ #python version:3.6 ''' 编写登录接口:     1.输入用户名和密码登录     2.输错三次锁定账户     3.下次登录还是上次的账户,提示锁定,直接退出

Windows 10上快速尝鲜bash on Ubuntu

今年微软Build 2016大会最让开发人员兴奋的消息之一,就是在Windows上可以原生运行Linux bash,对于非开发人员来讲,可能不知道这意味着什么,而对于开发人员来说,意味着Windows弥补了相比于MAC OS的终端的短板,你可以运行你熟悉的Linux bash,python,perl,使用一些Linux下的library……而不需要再安装一个Cygwin或者,安装一个虚拟机来跑Linux了. 具体新闻请参考: http://www.cnbeta.com/articles/4880

python初始---程序一(login登陆)

#!/bin/bash/env python while True:  user_name=raw_input('what is your name?').strip()  if len(user_name) == 0:    print "please input your user_name.if you not,please register!"    continue  else:    file=open('/root/passwd')    state=0       #n