linux用户组和权限管理详解

用户组和权限管理   概念 用户分为三类: 1、超级用户:root uid=0,简单来说uid为0的用户就是超级用户。 2、虚拟用户:存在linux中,满足文件或者程序运行的需要,而创建的。不能登录,不能使用。uid=1-499,1-999(centos7) 3、普通用户:管理员root创建的用户。uid=500+,1000+(centos7) 用户组就是具有相同特征的用户的集合。一个组可以包含多个用户,每个用户也可以属于不同的组。用户组的目的方便管理员对用户进行集中管理。用户组也分为两类:系统组和普通组。 用户和用户组的关系: 一对一:一个用户存在一个组,也可以是组中唯一成员 一对多:一个用户属于多个组… Read More

linux下tree指令的用法, 树状图列出目录, 树状图逐级列出目录

  tree命令,主要功能是创建文件列表,将所有文件以树的形式列出来 linux下的tree就比较强大了,但一般系统并不自带这个命令,需要手动下载安装,   安装 sudo apt install tree ## or using yum # yum -y install tree   语法 tree [-aACdDfFgilnNpqstux][-I <范本样式>][-P <范本样式>][目录...] 参数说明: -a 显示所有文件和目录。 -A 使用ASNI绘图字符显示树状图而非以ASCII字符组合。 -C 在文件和目录清单加上色彩,便于区分各种类型。 -d 显示目录名称而非内容。 -D 列出文件或目录的… Read More

python: 获得PayPal余额(GetBalance API), python paypal nvp

安装 python 的paypal的库: https://github.com/paypal/PayPal-Python-SDK 要求: Python 2.6 or 2.7 +   安装: pip install paypal ## or easy_install: # easy_install paypal ## or download the source, un-tar/un-zip it, cd into paypal-python, and: # python setup.py install   申请 NVP/SOAP 开发账户 打开链接:https://developer.paypal.com/developer/accounts/ 登… Read More

创建Composer包, 学习开发自己的 Composer 包,并使用 GitHub 实时更新到 Packagist

  composer是什么 Composer 不是一个包管理器。是的,它涉及 “packages” 和 “libraries”,但它在每个项目的基础上进行管理,在你项目的某个目录中(例如 vendor)进行安装。默认情况下它不会在全局安装任何东西。因此,这仅仅是一个依赖管理。 Composer 受到了 node’s npm 和 ruby’s bundler 的强烈启发。而当时 PHP 下并没有类似的工具。 composer可以做什么 Composer 将这样为你解决问题: 你有一个项目依赖于若干个库。 其中一些库依赖于其他库。 你声明你所依赖的东西。 Comp… Read More

Linux: memcache的安装和启动、停止、重启, 检查memcache server是否开启

memcache是高性能,分布式的内存对象缓存系统,用于在动态应用中减少数据库负载,提升访问速度。据说官方所说,其用户包括twitter、digg、flickr等,都是些互联网大腕呀。目前用memcache解决互联网上的大用户读取是非常流行的一种用法。 更多可以参考: PHP: Memcached安装, Memcache/Memcached的PHP操作手册, Memcached使用, Memcached教程 Memcached数据库管理, 基于Web的Memcached管理工具:phpMemAdmin 在PHP中使用memcached提高动态网站性能, memcached, memcache, memcached数据… Read More

python: try catch, Python 异常处理, Python 获取异常名称, try与except处理异常语句

什么是异常? 异常即是一个事件,该事件会在程序执行过程中发生,影响了程序的正常执行。 一般情况下,在Python无法正常处理程序时就会发生一个异常。 异常是Python对象,表示一个错误。 当Python脚本发生异常时我们需要捕获处理它,否则程序会终止执行。 获取error错误异常名字的实例: try: someFunction() except Exception as ex: template = "An exception of type {0} occurred. Arguments:\n{1!r}" message = template.format(type(ex).__name__, ex.args) print(message… Read More

python: JSON文件存储, python解析json, python读取json文件

JSON,全称为JavaScript Object Notation, 也就是JavaScript对象标记,它通过对象和数组的组合来表示数据,构造简洁但是结构化程度非常高,是一种轻量级的数据交换格式。本节中,我们就来了解如何利用Python保存数据到JSON文件。 json 模块提供了一种很简单的方式来编码和解码JSON数据。 其中两个主要的函数是 json.dumps() 和 json.loads(), 要比其他序列化函数库如pickle的接口少得多。 下面演示如何将一个Python数据结构转换为JSON: import json data = { 'name' : 'ACME', 'shares' : 100, 'price'… Read More

Python: 读写文本文件, read()、readline()、readlines(), 逐行读取,python操作文本

读写文件是最常见的 IO 操作。通常,我们使用 input 从控制台读取输入,使用 print 将内容输出到控制台。实际上,我们也经常从文件读取输入,将内容写到文件。 读文件 在 Python 中,读文件主要分为三个步骤: 打开文件 读取内容 关闭文件 一般使用形式如下: try: f = open('/path/to/file', 'r') # 打开文件 data = f.read() # 读取文件内容 finally: if f:

PHP:如何实现Hook机制, php钩子函数, php钩子实现

所谓Hook机制,是从Windows编程中流行开的一种技术。其主要思想是提前在可能增加功能的地方埋好(预设)一个钩子,这个钩子并没有实际的意义,当我们需要重新修改或者增加这个地方的逻辑的时候,把扩展的类或者方法挂载到这个点即可。 笔者在学习钩子机制时,参考的是TP3.2.3的tag和Hook机制,使用的是自己开发的MVC框架,其目录风格等均模仿TP3.2.3,让大佬们见笑了。 举个简单的例子,我们现在要写一个用户注册的功能,如下图: /App/Home/Controller/IndexController.class.php 突然有一天,客户说我需要增加一个功能,新用户注册奖励50积分,那我只好这样写… Read More

Python报错:AttributeError: module ‘logging’ has no attribute ‘debug’, AttributeError: module ‘logging’ has no attribute ‘basicConfig’

import logging LOG_FILENAME = 'example.log' logging.basicConfig(filename=LOG_FILENAME,level=logging.DEBUG) logging.debug('This message should go to the log file') 报错:AttributeError: module ‘logging’ has no attribute ‘debug’, 或者报错:AttributeError: module ‘logging’ has no attribute ‘basi… Read More

Python:logging模块详解, logging日志功能, logging实例

整个演讲的内容包括: 为什么日志记录非常重要 日志记录的流程是怎样的 怎样来进行日志记录 怎样进行日志记录相关配置 日志记录使用常见误区 下面我们来梳理一下整个演讲的过程,其实其核心就是介绍了 logging 模块的使用方法和一些配置。 日志记录的重要性 在开发过程中,如果程序运行出现了问题,我们是可以使用我们自己的 Debug 工具来检测到到底是哪一步出现了问题,如果出现了问题的话,是很容易排查的。但程序开发完成之后,我们会将它部署到生产环境中去,这时候代码相当于是在一个黑盒环境下运行的,我们只能看到其运行的效果,是不能直接看到代码运行过程中每一步的状态的。在这个环境下,运行过程中难免会在某个地方出现问题,甚至这个… Read More

Python 网络爬虫:Urllib库的基本使用, requests不建议使用?

Python 是一种面向对象、解释型计算机程序设计语言,由Guido van Rossum于1989年底发明,第一个公开发行版发行于1991年,Python 源代码同样遵循 GPL(GNU General Public License)协议。Python语法简洁而清晰,具有丰富和强大的类库。 Python3不像2x中酷虎的和服务器模块结构散乱,Python3中把这些打包成为了2个包,就是http与urllib,详解如下:   http会处理所有客户端–服务器http请求的具体细节,其中: (1)client会处理客户端的部分 (2)server会协助你编写Python web服务器程序 (3)cook… Read More

Python 网络爬虫:Python解析html, Beautiful Soup的用法

我们还有一个更强大的工具,叫Beautiful Soup,有了它我们可以很方便地提取出HTML或XML标签中的内容,实在是方便,这一节就让我们一起来感受一下Beautiful Soup的强大吧。 1. Beautiful Soup的简介 简单来说,Beautiful Soup是python的一个库,最主要的功能是从网页抓取数据。官方解释如下: Beautiful Soup提供一些简单的、python式的函数用来处理导航、搜索、修改分析树等功能。它是一个工具箱,通过解析文档为用户提供需要抓取的数据,因为简单,所以不需要多少代码就可以写出一个完整的应用程序。 Beautiful Soup自动将输入文档转换为Unicod… Read More

python:三元表达式, python三目运算符

python中没有其他语言中的三元表达式,不过有类似的实现方法   其他语言中,例如java的三元表达式是这样 int a = 1; String b = ""; b = a > 1? "执行表达式1":"执行表达式2" System.out.println(b) 在python中只有类似的替代办法,如果a>b的结果为真,h=”变量1″,如果为假,h=”变量2″ a = 1 b = 2 h = "" h = "变量1" if a>b else "变量2" print(h) 也可以用简单的公式,如下, a = 1 b = 2 h = "" h = a-b if a>b else a+b print(h)   &n… Read More