Linux和开源软件
jinbin18
这个作者很懒,什么都没留下…
展开
-
C++ Primer 读书笔记 (1)
我的《C++ Primer》扉页记着购书的日期和地点:C++ Primer 2009.11.28购于西区求索。那时对于这本厚书一直心怀敬畏,仿佛是眼前的一座大山。那时,虽然已经大四,但是对于面向对象的理解还很肤浅(相当肤浅),只能用C++编写一些简陋的C风格的结构化的程序。一晃快两年过去了,过去的时光放佛已经尘封于历史之中了,离自己已经遥远,但我知道自己现在唯有迎难前进,方能获得希望。但愿...2011-09-27 20:08:45 · 90 阅读 · 0 评论 -
Python处理XML文件
用代码记录下:import xml.dom.minidomtry: f = open(filename) dom = xml.dom.minidom.parseString(f.read())finally: f.close()if dom != None: root = dom.documentElement for ...原创 2013-03-11 16:54:12 · 150 阅读 · 0 评论 -
Bash脚本: 根据关键字做替换
根据某个文件的关键字做替换 #!/bin/bashkv=`awk -F "=" '{ if(NF==2) print $1"="$2 }' ./zuanshi_servic_test.properties`for kv in ${kv[@]};do k=`echo $kv | awk -F "=" '{print $1}'` v=`echo $...原创 2012-12-26 15:01:38 · 240 阅读 · 0 评论 -
Linux下PS1设置
在测试机上每次执行命令总要用sudo -u ads开头,比较麻烦。索性用:sudo su ads就可以直接用ads用户名进行操作了。但是用这种方式之后,命令的前缀就变成了"bash-3.2$ ",相当不习惯,经过网上搜索,发现修改PS1值就可以改变提示符。可以用:export PS1="[\u@\H \W]"则提示符就变得相对美观了。更多详细命令有: \...原创 2013-01-16 11:45:12 · 309 阅读 · 0 评论 -
Linux简单的颜色设置
通过alias,在~/.bashrc里配置:alias l.='ls -d .* --color=tty'alias ll='ls -l --color=tty'alias ls='ls --color=tty'alias vi='vim'alias which='alias | /usr/bin/which --tty-only --read-alias --show-do...原创 2013-01-16 13:16:08 · 194 阅读 · 0 评论 -
Curl
curl一个网址,取数据。curl "http://10.232.36.84:8088/service-manager/module/api/service_search/search.htm?service=com.taobao.ad.simba.user.service.UserReadService:1.0.0.daily" | grep "10.232.39.83" 结果会出现:...原创 2013-01-16 19:30:08 · 113 阅读 · 0 评论 -
svn 回归某一个特定版本
svn回归某一个特定版本:先用svn log查看回归版本的版本号 version然后用命令 svn up -r version原创 2013-01-16 20:16:27 · 379 阅读 · 0 评论 -
Linux中bashrc河bash_profile
/etc/profile:此文件为系统的每个用户设置环境信息,当用户第一次登录时,该文件被执行. 并从/etc/profile.d目录的配置文件中搜集shell的设置./etc/bashrc:为每一个运行bash shell的用户执行此文件.当bash shell被打开时,该文件被读取. ~/.bash_profile 调用 ~/.bashrc每个用户都可使用该文件输入专用于自...原创 2013-01-17 13:33:25 · 60 阅读 · 0 评论 -
rz 和 sz
想从windows上传文件到linux中,还是rz / sz 可以用yum安装:yum install lrzsz -y 不能直接yum install rz 或者 yum install sz,只能用lrzsz来安装,-y表示之后的判断一律选择yes 使用rz从windows上传文件到linux,刚开始屡次没成功,又没有异常报错。后来换了个目录,就轻松成功了。原来,自...原创 2013-01-22 19:57:18 · 73 阅读 · 0 评论 -
UML Online Tool
Q : Is there any free online UML modelling tool? A : By "online", I assume you mean browser based and no-install. Otherwise this is a duplicate question because there are already multipl...原创 2013-02-03 10:58:23 · 151 阅读 · 0 评论 -
Git使用的基本命令
Git: git statusgit add git commit -m 'message'git push mkdir JDoc-s-Projectcd JDoc-s-Projectgit inittouch READMEgit add READMEgit commit -m 'first commit'git remote add ori...原创 2013-02-06 14:46:15 · 87 阅读 · 0 评论 -
修改mysql数据库默认编码为utf8
查看当前字符编码: mysql < show variables like 'character%';为了解决中文乱码问题,修改mysql默认数据库编码为utf8,修改/etc/my.cnf [client] default-character-set=utf8 [mysql] default-character-set=utf8 [mysqld]...原创 2015-07-21 23:25:52 · 214 阅读 · 0 评论 -
nginx http 服务器搭建
下载nginx源码:http://nginx.org/en/download.html安装:wget http://nginx.org/download/nginx-1.9.3.tar.gzcd nginx-1.9.3./configure --prefix=/usr/local/nginx发现一个问题:checking for PCRE library ... no...原创 2015-07-22 14:59:59 · 126 阅读 · 0 评论 -
Grape和Sinatra结合使用
Grape && SinatraGrape(https://github.com/intridea/grape) is a REST-like API micro-framework for RubySinatra(http://www.sinatrarb.com/intro.html) is a DSL for quickly creating web applicat...2015-07-23 23:36:55 · 127 阅读 · 0 评论 -
cron任务
Linux下周期性任务一般由cron这个守护进程来处理。cron在系统引导时启动,只要系统在工作,它就会保持运行。cron的配置文件称为crontab,是为cron table的缩写。cron在三个地方查找crontab文件:/var/spool/cron,/etc/cron.d, /etc/crontab. 每个用户自己的crontab放在/var/spool/cron下,每个用户...2015-07-23 23:39:07 · 119 阅读 · 0 评论 -
step by step YAML 复用
yaml文件适合用来描述软件测试过程的步骤。当不同类型的CI过程集中在一个yaml文件时,首先碰到的一个问题是:大量重复的步骤如何进行复用?举个例子: stage1: run_it: exec: - A - B - C - D1 stage2: run_it: exec: ...2015-07-23 23:44:43 · 592 阅读 · 0 评论 -
Mac下mysql服务器安装
Mac下mysql服务器安装 下载mysql进入http://dev.mysql.com/downloads/mysql/下载Mac OS X 10.9 (x86, 64-bit), Compressed TAR Archive安装tar -zxvf mysql-5.6.25-osx10.9-x86_64.tar.gzmv mysql-5.6.25-osx10....2015-07-24 17:18:46 · 429 阅读 · 0 评论 -
apache httpd server安装的一个问题
问题1:启动bin/apachectl start的时候:发现报错:httpd: bad user name daemon 解决方法: groupadd daemonuseradd -g daemon daemon 若没有配置合适PATH常量,则可以找 /usr/sbin/groupadd,/usr/sbin/useradd ...原创 2012-02-20 17:05:51 · 112 阅读 · 0 评论 -
[翻译] Ruby Golf
原文地址:http://rubysource.com/ruby-golf/ Ruby golf is the art of writing code that uses as few characters as possible. The idea originates in the world of Perl (where it is, unsurprisingly, known as...2011-12-01 11:27:46 · 217 阅读 · 0 评论 -
常用命令
常用命令: awk '{if (/field/){print $0"\nnew_field=new_value\x01"} else {print $0}}' old_xml > new_xml 查看物理CPU个数:more /proc/cpuinfo | grep "physical id" | uniq | wc -l 查看cat /proc/cpu...原创 2011-11-23 11:48:30 · 76 阅读 · 0 评论 -
Linux与Windows文件共享命令 rz,sz
一般来说,linux服务器大多是通过ssh客户端来进行远程的登陆和管理的,使用ssh登陆linux主机以后,如何能够快速的和本地机器进行文件的交互呢,也就是上传和下载文件到服务器和本地; 与ssh有关的两个命令可以提供很方便的操作: sz:将选定的文件发送(send)到本地机器 rz:运行该命令会弹出一个文件选择窗口,从本地选择文件上传到服务器...原创 2011-09-29 09:57:20 · 158 阅读 · 0 评论 -
Ruby与vim
介绍一点vim下使用Ruby的技巧。 1. vim命令行模式下输入 !ruby % 可以直接运行Ruby程序,并返回到vim编辑 2. vim Ruby关键字及自定义变量补全拷贝附录中的ruby-macros.vim至机器某处,然后修改~/.vimrc,添加一行:source ROOT(自己定义)/ruby-macros.vim在用vim进行Ruby编程中...2011-09-30 10:31:42 · 140 阅读 · 0 评论 -
开源工具之valgrind
首先对源文件进行编译:Preparing your programCompile your program with -g to include debugging information so that Memcheck's error messages include exact line numbers.-O0 a good idea if you can tolerate th...2011-10-11 10:33:39 · 125 阅读 · 0 评论 -
分享一个expect的脚本
分享一个expect的脚本,可以用于Linux机器之间远程执行命令: #!/usr/bin/expect -fset ipaddress [lindex $argv 0]set user [lindex $argv 1]set passwd [lindex $argv 2]set cmd [lindex $argv 3]set timeout [lindex ...2011-10-11 11:29:27 · 80 阅读 · 0 评论 -
ssh其他机器的Expect脚本
ssh登陆其他机器的Expect脚本 #!/usr/bin/expect -fset user [lindex $argv 0]set ipaddr [lindex $argv 1]set passwd [lindex $argv 2]spawn ssh -l $user $ipaddrexpect "password:"send "$passwd...2011-10-11 16:37:02 · 110 阅读 · 0 评论 -
C++之Boost使用
1. Get & Build & Install Boostdownload boost from http://www.boost.org/进入boost目录,使用命令:./bootstrap.sh --prefix=path/to/installation./b2 install如此之后:leave Boost binaries in the lib/ ...原创 2011-10-13 11:24:48 · 269 阅读 · 0 评论 -
zz Expect的安装
转载一篇靠谱的文章,按照文章所述方法一次成功。只不过我的expect二进制文件最后实在tcl的bin目录下,而不是expect的bin目录下,这个令我有些疑惑,whatever,不算什么大问题,注意一下就好了。 A. Tcl 安装 主页: http://www.tcl.tk下载地址: http://www.tcl.tk/software/tcltk/downloadnow84.tml1....原创 2011-10-13 15:27:41 · 100 阅读 · 0 评论 -
分享一个ssh打通的脚本
分享一个ssh打通的脚本,经过测试可用。目前只能单向打通,且要求本地用户名为admin(写入代码,可简单修改)。本身只是个人使用,故通用性、异常情况考虑不多,大家可以做个参考。补充一点,Important Tip:authorized_keys文件的权限很重要,如果设置为777,那么登录的时候,还是需要提供密码的 :chmod 400 authorized_keys #...2011-10-14 10:20:17 · 216 阅读 · 0 评论 -
Linux之tee命令
语 法:tee [-ai][--help][--version][文件...]补充说明:tee指令会从标准输入设备读取数据,将其内容输出到标准输出设备,同时保存成文件。参 数:-a或--append 附加到既有文件的后面,而非覆盖它.--help 在线帮助。--version 显示版本信息。 使用: cat 1.txt | tee 2.txtcat 1.tx...原创 2011-10-14 14:26:16 · 113 阅读 · 0 评论 -
valgrind概述及错误分析
Valgrind由内核(core)以及基于内核的其他调试工具组成.内核类似于一个框架(framework),它模拟了一个CPU环境,并提供服务给其他工具.而其他工具则类似于插件 (plug-in),利用内核提供的服务完成各种特定的内存调试任务。 Valgrind包括如下一些工具:1. Memcheck: 这是valgrind应用最广泛的工具,一个重量...2011-10-19 09:46:34 · 436 阅读 · 0 评论 -
g++的使用
g++ 一般分为这几步:1. 预处理,生成.i文件2. 编译,生成.s文件(汇编文件)3. 汇编,将汇编文件转化成.o文件(目标文件)4. 连接目标代码,生成可执行文件 -c 激活预处理,编译,汇编,最后生成obj文件-S 激活预处理,编译,最后生成.s汇编文件-E 激活预处理,不生成文件,需要定位到一个输出文件里 -o 为结果文件命名 ...2011-10-20 15:54:48 · 194 阅读 · 0 评论 -
【转载】linux静态链接库与动态链接库的区别及动态库的创建
这篇文章对于动态库的概念及使用介绍的很不错,故收藏了。一、引言通常情况下,对函数库的链接是放在编译时期(compile time)完成的。所有相关的对象文件(object file)与牵涉到的函数库(library)被链接合成一个可执行文件(executable file)。程序在运行时,与函数库再无瓜葛,因为所有需要的函数已拷贝到自己门下。所以这些函数库被成为静态库(st...2011-10-20 17:43:00 · 56 阅读 · 0 评论 -
Makefile的东西
宏定义:1. Makefile中直接定义宏 OBJECTS=filea.o fileb.o filec.o #定义宏Z=filed.oprog: $(OBJECTS) #引用宏 cc $(OBJECTS) -o prog #我的机子环境中需要4个tab键prog1: $Z #引用宏,单个字符无需加园括号 cc $Z -o prog1...2011-10-20 21:14:12 · 89 阅读 · 0 评论 -
cppcheck源码学习(一)
今天整理了下cppcheck的源码结构,为什么通过写一个个子文件就能够扩展cppcheck的功能呢? 看了下代码,并通过简化代码,略懂一二了。 首先我们定义一个基类test.h,只定义一个头文件足够: #ifndef TESTH#define TESTH#include<iostream>#include<list>...2011-10-24 21:40:28 · 888 阅读 · 0 评论 -
valgrind工具之massif
今天小试了一把valgrind的massif工具。Massif在valgrind中的介绍是这样的:MassifMassif is a heap profiler. It performs detailed heap profiling by taking regular snapshots of a program's heap. It produces a graph showi...2011-10-26 21:48:24 · 1019 阅读 · 0 评论 -
使用svn时碰到的一个的问题
做技术的人,需要有完美主义,很多问题,如果当时不能彻底解决,往往会留下更大的麻烦。这个字符编码的问题,当时碰到的时候没有主义,以后遇到的时候也是抱着躲避的鸵鸟主义的态度,今天认真对待了一下,发现问题并非难以解决,网上就有现成的解决方案。想想以前面对困难时逃避的心理,却反而给自己带来了更多的麻烦,不得不感慨:做技术,需要完美主义,不能老是用折中、中庸的思维来解决问题。 以下为问...原创 2011-11-15 20:04:47 · 92 阅读 · 0 评论 -
linux下部署android模拟器
出于android测试需要,需要在linux机器上部署android模拟器环境,借助官网的文档,总结出如下步骤:下载android ADT(包括android SDK和android Developer Tools)wget http://dl.google.com/android/adt/adt-bundle-linux-x86_64-20140702.zip解压缩zip包,建...2015-07-28 17:20:45 · 3036 阅读 · 0 评论