yum groupinstall “Development Tools” 批量安装软件 linux

转自:http://yuhaitao.blog.51cto.com/3930555/1277382 注:可以通过 yum grouplist 来查看可能批量安装哪些列表 从Windows转到Linux下面,一个不习惯的地方就是在图形界面下安装和删除软件的时候非常缓慢。但是如果你掌握了用yum的命令行模式进行 配置程序,你肯定会从心底喜欢上这个强大的工具。因为yum提供了查找、安装、删除某一个、一组甚至全部软件包的命令,而且命令简洁而又好记。 yum的命令形式一般是如下:yum [options] [command] [package …] 其中的[options]是可选的,选项包括-h(帮助),-y(当安装过程提示选择全部为”yes”),-q(不显示安装的过程)等等。[command]为所要进行的操作,[package …]是操作的对象。 概括了部分常用的命令包括: 自动搜索最快镜像插件:yum install yum-fastestmirror 安装yum图形窗口插件:yum install yumex 1 安装 yum install 全部安装 yum install package1 安装指定的安装包package1 yum groupinsall group1 安装程序组group1 2 更新和升级 yum update 全部更新 yum update package1 更新指定程序包package1 yum check-update 检查可更新的程序 yum upgrade package1 升级指定程序包package1 yum groupupdate group1 升级程序组group1 3 查找和显示 yum info package1 显示安装包信息package1 yum list 显示所有已经安装和可以安装的程序包 yum list package1 显示指定程序包安装情况package1 yum groupinfo group1 显示程序组group1信息yum search string 根据关键字string查找安装包 4 删除程序 yum remove | erase package1 删除程序包package1 yum groupremove group1 删除程序组group1 yum deplist package1 查看程序package1依赖情况 5 清除缓存 yum clean packages 清除缓存目录下的软件包 yum clean headers 清除缓存目录下的 headers yum clean oldheaders 清除缓存目录下旧的 headers yum clean, yum clean all (= yum clean packages; yum clean oldheaders) 清除缓存目录下的软件包及旧的headers 比如,要安装游戏程序组,首先进行查找: #:yum grouplist 可以发现,可安装的游戏程序包名字是”Games and Entertainment“,这样就可以进行安装: #:yum groupinstall “Games and Entertainment” 所 有的游戏程序包就自动安装了。在这里Games and Entertainment的名字必须用双引号选定,因为linux下面遇到空格会认为文件名结束了,因此必须告诉系统安装的程序包的名字是“Games and Entertainment”而不是“Games”。 此外,还可以修改配置文件/etc/yum.conf选择安装源。可见yum进行配置程序有多方便了吧。更多详细的选项和命令,当然只要在命令提示行下面:man yum yum groupinstall “KDE (K Desktop Environment)” yum install pirut k3b mikmod yum groupinstall “Server Configuration Tools” yum groupinstall “Sound and Video” #yum groupinstall “GNOME Desktop Environment” yum groupinstall “Legacy Software Support” yum groupinstall “Development Libraries” yum groupinstall “Development Tools” #yum groupinstall “Windows File Server” yum groupinstall “System Tools” yum groupinstall “X Window System” yum install php-gd yum install gd-devel yum groupinstall “Chinese Support” #yum install samba-common  (此一動作會一起安裝samba-client) #yum install samba yum install gcc yum install cpp yum install gcc-c++ yum install ncurses yum install ncurses-devel yum install gd-devel php-gd yum install gd-devel yum install gcc yum install cpp yum install gcc-c++ yum install ncurses yum install ncurses-devel yum install gd-devel php-gd yum install gd-devel yum install zlib-devel yum install freetype-devel freetype-demos freetype-utils yum install libpng-devel libpng10 libpng10-devel yum install libjpeg-devel yum install ImageMagick yum install php-gd yum install flex yum install ImageMagick-devel #yum install system-config-bind #yum groupinstall “DNS Name Server”      //安裝 bind 及 bind-chroot 套件 yum groupinstall “MySQL Database”‘ yum clean all

python2 读取邮件内容简单事例源码:

python2 利用imap协议读取邮件内容简单事例源码: 备注:获取授权码后,第一次还是会报错,会提示类似这样的信息:A3 NO EXAMINE The login is not safe! Please update your mail client: http://mail.163.com/dashi,此时你会发现邮箱里面收到一个名为“网易邮箱提醒:阻止了一次不安全的收信请求”,打开邮件,在下面有一个如您确认当前所用的邮件客户端为可信任客户端仍继续使用,并愿自行承担信息泄露风险和损失,可前往(这里)设置…… 点击这里完成相应的设置便可。 参考文章: http://www.cnblogs.com/yhlx/archive/2013/03/22/2975817.html http://blog.41ms.com/post/53.html

iOS Safari 中点击事件失效的解决办法

问题描述 当使用委托给一个元素添加click事件时,如果事件是委托到 document 或 body 上,并且委托的元素是默认不可点击的(如 div, span 等),此时 click 事件会失效。 可以使用下面的代码在 iOS 中进行测试。 解决办法 解决办法有 4 种可供选择: ​1、将 click 事件直接绑定到目标​元素(​​即 .target)上 2、将目标​元素换成a或者 button 等可点击的​元素 ​3、将 click 事件委托到​​​​​非 document 或 body 的​​父级元素上 ​4、给​目标元素加一条样式规则 cursor: pointer; ​推荐后两种。从解决办法来看,​推测在 safari 中,不可点击的元素的点击事件不会冒泡到父级元素。通过添加 cursor: pointer 使得元素变成了可点击的了。 原文地址:https://happycoder.net/solve-ios-safari-click-event-bug/

wampserver虚拟目录配置

项目中需要配置虚拟目录,找到对应的httpd.conf文件,在文件后面加入下面的配置(具体配置参数麻烦自行查阅,并根据自身情况配置) 备注: 1、httpd.conf在wampserver安装目录下,我的是C:\wamp\bin\apache\apache2.4.9\conf 2、也可以将下面的配置放到与httpd.conf在同一个目录的extra/httpd-vhosts.conf,然后将Include conf/extra/httpd-vhosts.conf前面的注释(#)去掉 然后去修改自身的host文件,C:\Windows\System32\drivers\etc,加入 192.168.1.10(你的ip) duanzhihe.com 参考文章:http://blog.sina.com.cn/s/blog_a08eaae50102uyh0.html

python list(数组)、tuple(元组)、dict(字典)、set(与dict类似,也是一组key的集合)

本文主要是介绍以上四种数据类型的常规简单操作 1、list,Python内置的一种数据类型是列表:list。list是一种有序的集合,可以随时添加和删除其中的元素。 可以采用append(‘value’)在list末尾插入新的元素,insert(Index,’value’)可以在指定位置插入元素,pop(index)删除指定位置的元素,其中listTemp[index]可以拿到指定位置的数据,listTemp[-1]可以拿到最后的元素,len(listTemp)可以拿到数组的长度,value in listTemp可以判断元素是不是在指定的数组里,去重可以采用先转成set,再转回来,示例如下: 2、tuple,和list一样也是一种有序列表。tuple中的值一旦被赋予便不能修改,也没有append(),insert(),但可以在后面追加新的值,可以正常地使用classmates[0],classmates[-1]。 tuple定义,若是打算定义一个空的tuple,可以这样 t=(),若是打算定义里面存在元素可以这样 t=(1,2,3),若是打算定义只有一个元素的tuple时要注意了,需要在后面加上一个“,”,如 t = (2,),因为否则会与数学中的小括号冲突了,发生歧义。 tuple在末尾追加新元素的方式: 3、dict(字典),d = {‘Michael’: 95, ‘Bob’: 75, ‘Tracy’: 85},d就算一个字典,很明显d[‘Michael’]拿到的值是95,字典可以根据key值(上例中的Michael)来修改字典中某个key下的value值,如d[‘Michael’]=93,也可以直接插入对应的键值对,如d[‘Adam’] = 67。 上面采用d[‘Michael’]拿值的方式是最简单直接的,但在没有对应key值的时候会报错,为了避免可以通过in判断key是否存在,如’Thomas’ in d,除了判断还以采用dict提供的get方法,如果key不存在,可以返回None,或者自己指定的value,如d.get(‘Thomas’),不存在返回none,d.get(‘Thomas’,-1),不存在返回-1。 删除一个key,用pop(key)方法,对应的value也会从dict中删除,如:d.pop(‘Bob’),删除调了d的字典中key为Bob的key和value。 请务必注意,dict内部存放的顺序和key放入的顺序是没有关系的。 和list比较,dict有以下几个特点: 查找和插入的速度极快,不会随着key的增加而变慢; 需要占用大量的内存,内存浪费多。 而list相反: 查找和插入的时间随着元素的增加而增加; 占用空间小,浪费内存很少。 4、set:set和dict类似,也是一组key的集合,但不存储value。由于key不能重复,所以,在set中,没有重复的key。 s = set([1, 1, 2, 2, 3, 3]),实际存到s里面的是{1, 2, 3},注意,传入的参数[1, 2, 3]是一个list,而显示的{1, 2, 3}只是告诉你这个set内部有1,2,3这3个元素,显示的顺序也不表示set是有序的。 set有add、remove等方法,如:s.add(4)、s.remove(4)。 set可以看成数学意义上的无序和无重复元素的集合,因此,两个set可以做数学意义上的交集、并集等操作,如: 参考文章: 使用dict和set 使用list和tuple python对list去重的各种方法

Python模块学习:tempfile 临时文件(夹)操作

应用程序经常要保存一些临时的信息,这些信息不是特别重要,没有必要写在配置文件里,但又不能没有,这时候就可以把这些信息写到临时文件里。其实很多程序在运行的时候,都会产生一大堆临时文件,有些用于保存日志,有些用于保存一些临时数据,还有一些保存一些无关紧要的设置。在windows操作系统中,临时文件一般被保存在这个文件夹下:C:/Documents and Settings/User/Local Settings/Temp。其实我们最常用的IE浏览器在浏览网页的时候,会产生大量的临时文件,这些临时文件一般是我们浏览过的网页的本地副本。Python提供了一个tempfile模块,用来对临时数据进行操作。查阅Python手册,里面介绍了如下常用的方法: tempfile.mkstemp([suffix=”[, prefix=’tmp'[, dir=None[, text=False]]]]) mkstemp方法用于创建一个临时文件。该方法仅仅用于创建临时文件,调用tempfile.mkstemp函数后,返回包含两个元素的元组,第一个元素指示操作该临时文件的安全级别,第二个元素指示该临时文件的路径。参数suffix和prefix分别表示临时文件名称的后缀和前缀;dir指定了临时文件所在的目录,如果没有指定目录,将根据系统环境变量TMPDIR, TEMP或者TMP的设置来保存临时文件;参数text指定了是否以文本的形式来操作文件,默认为False,表示以二进制的形式来操作文件。 tempfile.mkdtemp([suffix=”[, prefix=’tmp'[, dir=None]]]) 该函数用于创建一个临时文件夹。参数的意思与tempfile.mkdtemp一样。它返回临时文件夹的绝对路径。 tempfile.mktemp([suffix=”[, prefix=’tmp'[, dir=None]]]) mktemp用于返回一个临时文件的路径,但并不创建该临时文件。 tempfile.tempdir 该属性用于指定创建的临时文件(夹)所在的默认文件夹。如果没有设置该属性或者将其设为None,Python将返回以下环境变量TMPDIR, TEMP, TEMP指定的目录,如果没有定义这些环境变量,临时文件将被创建在当前工作目录。 tempfile.gettempdir() gettempdir()则用于返回保存临时文件的文件夹路径。 tempfile.TemporaryFile([mode=’w+b'[, bufsize=-1[, suffix=”[, prefix=’tmp'[, dir=None]]]]]) 该函数返回一个 类文件 对象(file-like)用于临时数据保存(实际上对应磁盘上的一个临时文件)。当文件对象被close或者被del的时候,临时文件将从磁盘上删除。mode、bufsize参数的单方与open()函数一样;suffix和prefix指定了临时文件名的后缀和前缀;dir用于设置临时文件默认的保存路径。返回的类文件对象有一个file属性,它指向真正操作的底层的file对象。 tempfile.NamedTemporaryFile([mode=’w+b'[, bufsize=-1[, suffix=”[, prefix=’tmp'[, dir=None[, delete=True]]]]]]) tempfile.NamedTemporaryFile函数的行为与tempfile.TemporaryFile类似,只不过它多了一个delete参数,用于指定类文件对象close或者被del之后,是否也一同删除磁盘上的临时文件(当delete = True的时候,行为与TemporaryFile一样)。 tempfile.SpooledTemporaryFile([max_size=0[, mode=’w+b'[, bufsize=-1[, suffix=”[, prefix=’tmp'[, dir=None]]]]]]) tempfile.SpooledTemporaryFile函数的行为与tempfile.TemporaryFile类似。不同的是向类文件对象写数据的时候,数据长度只有到达参数max_size指定大小时,或者调用类文件对象的fileno()方法,数据才会真正写入到磁盘的临时文件中。 蛮简单、实用的一个模块,不是吗? 原文:http://python.jobbole.com/81515/

python urllib2 爬虫返回乱码

python urllib2 爬虫返回乱码,查了半天,很多人都说是中文乱码的问题,但我试了半天,也感觉不像是,后面查了,原来是压缩的问题。压缩了,需要手动解压,urllib是不会帮你解压的,解压部分的源码:

javascript文件加载问题

1、javascript文件加载分为同步和异步,同步的话,现在高级浏览器支持了并行下载,但执行上依旧是按照文件的先后顺序来执行!很能理解,同步的好处是为了防止js执行顺序错乱,由于其中极有可能会有依赖关系,不好的地方容易造成阻塞。异步正好和同步相反,避免了阻塞,但执行顺序极有可能混乱了! 2、这里还有一个问题,若是有test1.js、test2.js、test3.js,但在加载test2.js的过程中出现了问题,然后重新拉取新的js文件test4.js,是先执行test4.js还是test3.js呢,本人在chrome最新版本(50.0.2661.94)上,显示是test4.js先执行,看来js的加载执行真的是完全深度化啊! 3、最后分享一篇文章,有关js文件在什么情况下是同步,什么时间是异步的问题:http://www.cnblogs.com/ecalf/archive/2012/12/12/2813962.html

移动端开发之小米1s崩溃的问题

一个内嵌在app内的页面,有一个按钮,一旦点击小米1s就崩溃了,经过调试发现问题出现在触发事件报错后,需要在body内append(插入)一个元素,就是这么简单的一个操作,直接导致小米1s崩溃了? 唉,毕竟是老机子了,很明显像是渲染那不给力,随后在不触发按钮的情况下等尝试了append(插入)元素,会不定期的出现页面崩溃! 虽不敢百分百肯定,但基本可以断定了是页面渲染性能的问题,于是将需要插入的元素事先埋在了html里面,触发的时候显示出来,结果崩溃的概率大大降低了,在click后又加了一个延迟,崩溃的概率又降低了些! 忘记说了一点,我们插入的东西很简单,就是一个p元素! 若是有人知道具体原因,欢迎告知!

写给面临找实习、9月份找工作的娃

以下内容均属个人观点,仅供参考。 每年的九月份,一群娃的人生又一个转折点。四年前,我走过了这一段纠结的路,有一点曾经的心得整理出来分享一下! 工作PK考研 ? 读研?还是工作?在我看来,各有各的优势,所以何从选择,要看自己,但这里我要说一句,一定要尽早决定,不要即想着读研,又想去工作,那很有可能,最后两边都耽误了。 快找工作了,我还什么都不会怎么办? 还有三四个月呢?我就是靠这三个多月的时间自学的前端开发,作为过来人可以很肯定的告诉大家,只要肯付出,肯用心,利用3-4个月时间去啃一项技术,一门编程语言,足以帮助你找到一份技术类的工作。 不要去过多的想着结果了,迈出学习的第一步,结果就在不远处等待着你! 我不想做技术,怎么办? 这个?当然可以,这个世界最幸福的人便是做着自己喜欢的工作之人,所以,若不想做技术,那就想好自己到底要做那一类非技术工作,产品?销售?行政?人力?还是其他? 想好,便同样可以利用暑假去补习相关知识了,和技术一样,非技术类工作同样需要“技术”,不同的是,这里的技术指的是“对产品的敏感度”、“与人的沟通能力”以及“做事的把握度”等等,这些技术同样可以在书本中,亦或是生活中学到。 大三暑假要不要去实习? 首先,确定你实习的工作是否与你想做的相关,若相关,那很好,若不相关,只是为了丰富简历,亦或是挣一些零钱,个人觉得可以考虑是否实习,考虑是否要私下为9月份的择业做相关知识储备。因为,技术类来说,若实习与最终找工作相关度不大,那暑期的实习对于9月份择业帮助不大,而且浪费了宝贵的择业准备阶段。非技术类的话,我没有多少发言权,但感觉,虽然非技术类都有一定的相关性,但其差别也还是有的,有些甚至还是挺大的。 实习期间,技术类,上班期间,尽量跟着导师熟悉基础知识,接触新东西,了解公司内部的工作体系,技术体系。下班期间,多多针对想要从事的行业,想要去的公司,做技术储备,包括阅读一些相关技术文献,网上浏览相关行业,目标企业的历年面试笔试题,这对于找工作帮助很大。非技术类,我没经历过,没有多少发言权,只说一句,多多学习一些工作中前辈的为人处事方法,多多做心得总结。 若并非非常想要留在实习公司,那一定要赶在9月初回来,不要管实习公司的什么实习期必须3个月,亦或是6个月的规定,去年来看,9月底至10月中旬是招聘的高峰期,错过一天,就很有可能错过很多家公司,而且很多大牛公司都是9月份就来的。 没找到实习咋办? 首先,有一个良好的规划,包括想要从事的行业,甚至具体到某个职位,某一家公司。从去年来看,技术类一般最好只确定一个方向,如:选定java,那暑期大部分精力需全放在java相关的东西,其他的相关语言技术,如:C、C++可以在闲暇时间简单看一下。非技术类,可以多选几个方向,但最好不要超过三个,个人感觉两个最合适,而且选择的两个最好还要有一些相关性,以便于能够学习时、笔试时相互嵌套知识点。 选择好方向,如何准备?个人觉得,一方面是找一些相关正规资料看,若是技术类的话,可以选择一本相关书籍,最好还是众人推荐的经典书籍。这里提一点,我曾经被网上的资料坑过,有些网上给出的答案并不一定正确。若是非技术类,应该也有相关书籍,个人感觉,看非技术类书籍,最重要的是体会出作者想要表达的,然后从中挑选出一些比较重要的道理,亦或是经验。 补充相关知识后,一定要找一些相关技术、相关行业的笔试面试题看一下,这里可以具体到某家公司,算是理论与实践相结合。强调一下,每个公司,每年的笔试题基本上题型差距都不大,看了、做了后绝对大有帮助。 强调一下,没有去实习,也就没有了强制力,若自己执行力,自控能力不够的话,很容易一暑假荒废过去,所以,一定要规划好自己的暑期安排,尽量按照规划执行。 职业选择? 这个问题太深奥,我只能说,尽量根据自己兴趣选择,根据自己自身优势去选择 有一点,提一下,选择职业时,不要觉得,我是理科出身,就一定要找一个技术类的工作,要不然大学就等于白上了。个人觉得啊,还是那句话,根据兴趣选择职业,因为大学交给我们的不仅是科学知识,还有许许多多的其他方面,如:集体生活时,如何处理同学间的关系。 不要太过强迫自己做不喜欢的职业,你真的不会开心的,也不会做的很好的! 薪金要多少合适呢? 校招的情况,一般来讲,公司并不会根据你要的钱,来决定你入职后拿到多少钱,而是根据职位设定,当然若是你能力真的很强,他们想要留住你,可能会提价! 那么面对这个问题如何回答呢?若是没有特别好的回答,可以使用下面这个回答:“仅凭比试、面试,我觉的您不一定了解我的真实能力,所以,我对起始工资要求不高,但我希望入职后,公司能够根据我的工作表现,多多的给我提薪”。 对于应届毕业生,薪资重不重要? 当然重要,因为薪金在一定程度上决定着你的生活水平、生活质量,还在一定程度上决定了你下一次跳槽后的薪资……如何理解,假如你当前薪资是6000,你跳槽的话对方给你10000就相当于给你涨了很多,但若是另外一个人原本是10000,他能轻轻松松要到13000以上,不过这也完全可以被你能力的大幅度提升说打破,真的强大,6000到20000+也不是没有可能! 不过也不是特别重要,因为,毕业后真正拉开差距的并不是毕业时的薪金,而是你选择走的路,选择的行业,你在行业内的能力等等。 个人觉得,若是对职业、薪金、地域三个因素排名,我一定将薪金排在最后。 不过话说回来,若是与其他因素不冲突,薪金当然是越高越好了 。 我想要回来家工作,可是老家、老家附近的城市没有合适的来招聘? 中国人有落叶归根之说,所以,相当一部分人会有回到家乡工作的想法,这种想法对不对呢?我不知道,也不发表意见,只是给几点建议 : 可以在网上网投一些并没有来成都招聘的家乡公司,网上的投中概率是平均十五分简历,一个笔试、面试机会 。 可以选择适当时机,回到家乡高校去应聘家乡公司,只不过会有些辛苦 。我有几个高中同学就是回老家参加双选会找到的。 虽然可以坚持,但不要不懂得变通,若真有较好的机会进入知名企业,即便不是家乡企业,也可以考虑。 笔试前准备 ? 软件类 :首先,推荐一本书籍,《编程之美》,从去年来看,这本书的程序题命中率极高。其次,若有向往的公司,笔试前,去网上找他们的历年题刷之 。 产品类 :查找其历年笔试题,刷之。除此,产品类笔试题,有些公司是产品比较,有些则是数据分析,脑筋急转弯等。若有向往的公司,了解其主要产品,了解其主要竞争对手的产品 。 笔试? 软件类:程序题,尽量用代码,若有时间,代码旁边最好附上注释 。不会写的题,可以写出分析过程 。有些题会出现在不同公司的笔试题之中,所以,遇到不会的,下来最好查一下 。 产品类 :我遇到过两类,一类整张试卷全是产品对比,产品使用心得等,一类全是数据分析、数据处理、智力题等。笔试时,最好带上计算器,计算题时能够提高速度 面试? Ø 首先,去网上找找相关的面经,其次表现出非常想去所面试的公司,表现出自己的自信,但同时也要保有谦逊,遇到不懂勇于承认,另一方面表现出强烈的求知欲。 Ø 不要给自己挖坑,遇到不会的,最好找巧妙方法绕过 ,不要不懂装懂,因为若是碰到真懂的面试官,会被问得很惨 。 Ø 群面,产品类职位多半会有群面,具体群面技巧可网上查询,非群面的也可以好好看看! Ø 是否要正装?技术类的一般不用,非技术类的,从我们班情况来看,一些职位,如:销售、人事之类(主要是代表公司脸面的职位)的最好穿,其他的貌似没有要求,可穿可不穿 最后,如何书写简历? 校招生里面十个里面八个的简历都是平平淡淡的,直白来说就是很少有亮点 ,所以自己觉得拿得出手的就往前方,因为一份简历在HR眼中停留的时间可能很有限(切记,社招的话就要写和应聘的工作有关的了,学校的学习情况,获奖情况意义已经不大了)。 不重要的东西不要过多的写,靠没含金量堆起来的简历会减分,同时太过主观的东西也少写! 怎么说呢?与其纠结简历如何写,还不如好好利用剩下的时间去学习东西来填补简历的内容,现在的每一个学习都可能决定你第一份工作的收入,甚至影响到将来的职业发展! 客观来说我简历写的也不好!

双色球全部组合数

今天想看下双色球的全部组合情况,于是就用python写了如下代码 其实,这是非常简单的排列组合问题,直接如下33*32*31*30*29*28/(1*2*3*4*5*6)*16 = 17721088;