摘要: 上面例子使用的是 ${#i} 来计算 上面例子使用的是 expr length $i 来计算 使用 awk print length来计算 使用wc -L 更加简单 请注意 wc -l -L -l, --lines print the newline counts -L, --max-line-le 阅读全文
posted @ 2017-03-14 13:12 Vincen_shen 阅读(420) 评论(0) 推荐(0)
摘要: for file in `ls *fin*.jpg`;do mv $file ${file/_finished/} done 阅读全文
posted @ 2017-03-14 13:12 Vincen_shen 阅读(149) 评论(0) 推荐(0)
摘要: 赋值: str="i am vincen" 计算字符串长度: ${#str} 字符串截取: ${str:2} ${str:2:3} 从开头删除匹配的子串: ${str#"i"} 从结尾删除匹配的子串: ${str%"vincen"} 字符串内容替换(替换第一个匹配到的) ${str/old/new} 阅读全文
posted @ 2017-03-14 12:52 Vincen_shen 阅读(156) 评论(0) 推荐(0)
摘要: 注意定义变量的语法: var="ABC" 等号之间不能有空格,否则会报错 阅读全文
posted @ 2017-03-14 12:44 Vincen_shen 阅读(191) 评论(0) 推荐(0)
摘要: echo 命令参数: -n 不换行输出 -e 解析转义字符(\n \t \b \r) 阅读全文
posted @ 2017-03-10 12:45 Vincen_shen 阅读(376) 评论(0) 推荐(0)
摘要: sed正则 匹配非小写字母 sed d 1. send d删除某行 sed -n 1、sed -n 打印文件的行 sed -i 2、sed -i 替换字符串(参数s替换某行中的内容) (参数d删除某行) (参数a增加内容) 参数d删除某行 参数a增加内容 参数c整行替换 实例: 阅读全文
posted @ 2017-03-10 12:29 Vincen_shen 阅读(168) 评论(0) 推荐(0)
摘要: 运算符 条件变量替换 Bash Shell可以进行变量的条件替换,既只有某种条件发生时才进行替换,替换条件放在{}中. (1) ${value:-word} 当变量未定义或者值为空时,返回值为word的内容,否则返回变量的值. (2) ${value:=word} 与前者类似,只是若变量未定义或者值 阅读全文
posted @ 2017-03-09 11:10 Vincen_shen 阅读(206) 评论(0) 推荐(0)
摘要: $0 -- 获取当前执行shell脚本的 文件名 $n -- 获取当前执行shell脚本的 第n个参数 $# -- 获取当前执行shell脚本的 带的参数个数 $? -- 获取执行上一个指令的执行状态返回值 0为成功,非零为失败 $* -- 获取当前shell脚本所有传参的参数, "$*" 将所有参 阅读全文
posted @ 2017-03-09 10:50 Vincen_shen 阅读(239) 评论(0) 推荐(0)
摘要: 前戏: 一般来说,要使用某个类的方法,需要先实例化一个对象再调用方法。 而使用@staticmethod或@classmethod,就可以不需要实例化,直接类名.方法名()来调用。 这有利于组织代码,把某些应该属于某个类的函数给放到那个类里去,同时有利于命名空间的整洁。 既然@staticmetho 阅读全文
posted @ 2017-03-04 10:07 Vincen_shen 阅读(530) 评论(0) 推荐(0)
摘要: 基于类的装饰器,思路跟基于函数的装饰器类似,但是需要注意类中的 getattr return 下面看一个示例: def authentication(func): class Auth(object): def __init__(self, *args, **kwargs): print("Pre- 阅读全文
posted @ 2017-02-20 18:03 Vincen_shen 阅读(267) 评论(0) 推荐(0)
摘要: WEB架构 阐述各服务器用途: 1、haproxy 实现后端Web服务器负载均衡 2、keepalived 实现对haproxy的高可用 3、apache static 实现静态页面的访问 4、aoache dynamic 实现动态页面的访问 What is Keepalived ? Keepali 阅读全文
posted @ 2017-02-20 00:48 Vincen_shen 阅读(437) 评论(0) 推荐(0)
摘要: 安装Tomcat分为两步: JDK和Tomcat 安装jdk 1、在oralce官网下载jdk 2、解压并创建jdk目录 ~# tar jdk-89121-linux-x64.tar.gz ~# mkdir /usr/lib/jvm ~# cp -R jdk1.8.0_121 /usr/lib/jv 阅读全文
posted @ 2017-02-19 20:18 Vincen_shen 阅读(258) 评论(0) 推荐(0)
摘要: linux环境变量 注意:如果用户的shell不是登录时启动的(例如ssh登录),那么这种非登录shell只会加载~/.bashrc 和 /etc/bashrc. 因此不建议在 /etc/profile中配置全局变量 全局环境变量配置文件: /etc/bashrc 局部环境变量配置文件: ~/.ba 阅读全文
posted @ 2017-02-18 23:58 Vincen_shen 阅读(188) 评论(0) 推荐(0)
摘要: HAproxy HAProxy是一个使用C语言编写的自由及开放源代码软件,其提供高可用性、负载均衡,以及基于TCP和HTTP的应用程序代理。 测试环境 HAproxy HAProxy是一个使用C语言编写的自由及开放源代码软件,其提供高可用性、负载均衡,以及基于TCP和HTTP的应用程序代理。 测试环 阅读全文
posted @ 2017-02-18 00:23 Vincen_shen 阅读(2090) 评论(0) 推荐(0)
摘要: 修改sudoers配置文件:~$ sudo vi /etc/sudoers 在文件末尾添加需要sudo输入密码的user:[user] ALL=NOPASSWD:ALL 表示sysadmin这个组在进行apt-get和aptitude时不需要进行sudo操作:%sysadmin ALL=NOPASS 阅读全文
posted @ 2017-02-09 17:02 Vincen_shen 阅读(507) 评论(0) 推荐(0)
摘要: ~# sudo nano /etc/default/grub找到:GRUB_CMDLINE_LINUX=""改为:GRUB_CMDLINE_LINUX="net.ifnames=0 biosdevname=0" ~# sudo grub-mkconfig -o /boot/grub/grub.cfg 阅读全文
posted @ 2017-02-09 15:58 Vincen_shen 阅读(606) 评论(0) 推荐(0)
摘要: http://jingyan.baidu.com/article/6d704a130c8a0d28da51ca5f.html Ubuntu 14.04 apache安装配置 1、安装 ~# apt-get install apache2 -y 2、默认的网站根目录的路径 Apache安装完成后,默认 阅读全文
posted @ 2017-01-19 22:32 Vincen_shen 阅读(243) 评论(0) 推荐(0)
摘要: CentOS bridge 配置: 1、创建br0配置文件 touch /etc/sysconfig/network-scripts/ifcfg-br0 2、修改bro配置文件 vi /etc/sysconfig/network-scripts/ifcfg-br0 3、添加网卡到网桥 vi /etc 阅读全文
posted @ 2017-01-18 10:07 Vincen_shen 阅读(720) 评论(0) 推荐(0)
摘要: Ubuntu安装NTP Server很简单,分位3步走: 第一步:安装NTP 第二步:修改ntp.conf配置文件 1) 添加公网NTP Server server 120.24.166.46 (阿里云NTP Server) 2) 允许的NTP Client网段 第三步:重启NTP服务,并在客户端验 阅读全文
posted @ 2017-01-14 11:22 Vincen_shen 阅读(11451) 评论(1) 推荐(1)
摘要: [ceph_deploy][ERROR ] RuntimeError: Failed to execute command: ceph-disk-activate –mark-init sysvinit –mount /dev/sdb1 说实话这个问题很二我将OSD单独放到一个分区sdb执行的命令是 阅读全文
posted @ 2017-01-12 22:26 Vincen_shen 阅读(991) 评论(0) 推荐(0)