常用awk命令(转)
摘要:awk用法:awk'pattern{action}'变量名 含义ARGC 命令行变元个数ARGV 命令行变元数组FILENAME 当前输入文件名FNR 当前文件中的记录号FS 输入域分隔符,默认为一个空格RS 输入记录分隔符NF 当前记录里域个数NR 到目前为止记录数OFS 输出域分隔符ORS 输出记录分隔符1、awk'/101/'file显示文件file中包含101的匹配行。awk'/101/,/105/'fileawk'$1==5'fileawk'$1=="CT"'file注意必须带双引号a
阅读全文
posted @
2014-02-20 22:03
知识天地
阅读(508)
推荐(0) 编辑
linux C中调用shell命令和运行shell脚本 (
摘要:1、system(执行shell 命令)相关函数 fork,execve,waitpid,popen表头文件 #include定义函数 int system(const char * string);函数说明 system()会调用fork()产生子进程,由子进程来调用/bin/sh-cstring来执行参数string字符串所代表的命令,此命令执行完后随即返回原调用的进程。在调用system()期间SIGCHLD 信号会被暂时搁置,SIGINT和SIGQUIT 信号则会被忽略。返回值 如果system()在调用/bin/sh时失败则返回127,其他失败原因返回-1。若参数string为空指针
阅读全文
posted @
2014-02-17 08:17
知识天地
阅读(3059)
推荐(0) 编辑
Linux查看文件编码格式及文件编码转换
摘要:如果你需要在Linux 中操作windows下的文件,那么你可能会经常遇到文件编码转换的问题。Windows中默认的文件格式是GBK(gb2312),而Linux一般都是UTF-8。下面介绍一下,在Linux中如何查看文件的编码及如何进行对文件进行编码转换。查看文件编码在Linux中查看文件编码可以通过以下几种方式:1.在Vim 中可以直接查看文件编码Shell代码:setfileencoding即可显示文件编码格式。如果你只是想查看其它编码格式的文件或者想解决用Vim查看文件乱码的问题,那么你可以在~/.vimrc 文件中添加以下内容:Shell代码setencoding=utf-8file
阅读全文
posted @
2014-01-15 20:48
知识天地
阅读(825)
推荐(0) 编辑
修改数据库表的字符集
摘要:MySQL 乱码的根源是的 MySQL 字符集设置不当的问题,本文汇总了有关查看 MySQL 字符集的命令。包括查看 MySQL 数据库服务器字符集、查看 MySQL 数据库字符集,以及数据表和字段的字符集、当前安装的 MySQL 所支持的字符集等。一、查看 MySQL 数据库服务器和数据库字符集。mysql> show variables like '%char%';+--------------------------+-------------------------------------+------| Variable_name | Value |......
阅读全文
posted @
2013-12-27 13:18
知识天地
阅读(3453)
推荐(0) 编辑
mysql 修改表名的方法:sql语句
摘要:在使用mysql时,经常遇到表名不符合规范或标准,但是表里已经有大量的数据了,如何保留数据,只更改表名呢?可以通过建一个相同的表结构的表,把原来的数据导入到新表中,但是这样视乎很麻烦。能否简单使用一个SQL语句就搞定呢?当然可以,mysql5.0下我们使用这样的SQL语句就可以了。ALTER TABLE table_name RENAME TO new_table_name例如 ALTER TABLE admin_user RENAME TO a_user
阅读全文
posted @
2013-12-27 12:35
知识天地
阅读(2436)
推荐(0) 编辑
内存写越界导致破环堆结构引起的崩溃问题定位经验[如报错malloc(): memory corruption或free(): invalid next size]
摘要:前段时间开发的一个后端C模块上线后,线上出core,初始时,因为訪问压力不大,所以崩溃是上线3天左右出现的。当时用gdb跟进调用堆栈并检查源代码,发现出core位置的代码沒有啥问题。因为当时开发任务较重,且该模块不保存状态(崩溃重新启动不影响对外服务),所以沒有深入跟进。后来随着client版本号逐渐放量导致訪问压力上升,噩梦開始了。。。 该模块会不定时core掉,并且差点儿每次崩溃时的调用堆栈都不一样,关键是最后几层堆栈非常多都位于差点儿不可能出问题的代码中,比方库函数或厂里的公共库。 好在在众多core文件里发现规律:每次基本都是在对内存动态操作时挂掉,比方m...
阅读全文
posted @
2013-12-27 10:07
知识天地
阅读(6763)
推荐(1) 编辑
Linux与Windows编译器的区别
摘要:移植工作開始后的第一步就是在目标平台Linux上进行编译,并链接源码。因为须要移植的软件通常并未在Linux平台上编译过,编译的过程可能会遇到非常大的困难。普通情况下,由类型声明引起的编译错误是比較easy修复的。比方Microsoft C/C++的头文件使用__declspec( dllimport/dllexport )来输入和输出DLL函数,在Linux上,把函数声明成extern “C”,或者再结合使用DEF文件,使用对应的链接命令就能够解决这些问题。但困难的地方在于编译器之间存在差异的部分,同一时候这也是可能引起非常多执行时问题的重要因素,读者有必要在開始移植之前就充分了解。在此讲述
阅读全文
posted @
2013-12-27 10:06
知识天地
阅读(3351)
推荐(0) 编辑
解压tar包中的指定文件
摘要:解压tar包中的指定文件在一个tar包中,仅仅想解压某个须要的文件,而不是所有文件,能够通过在解压命令后加上文件名的方式来解决:===> tar -tvf hr9pre_2_120809.tar-rw-r----- 70248201 206 1536 Nov 16 02:56:37 2009 /opt/oracle/product/10.2.0/dbs/orapwhr9pre-rw-r----- 70248201 206 5632 Dec 03 00:01:20 2009 /opt/oracle/product/10.2.0/dbs/spfilehr9pre.ora-rw-r-----
阅读全文
posted @
2013-12-12 18:58
知识天地
阅读(2201)
推荐(1) 编辑
shell按行合并文件
摘要:file1abcfile2123如何合并两个文件,得到a 1b 2c 3awk方式 awk 'NR==FNR{a[NR]=$0}NR>FNR{print a[FNR],$0}' file1 file2paste方式 paste -d " " file1 file2 > result-file
阅读全文
posted @
2013-12-04 11:48
知识天地
阅读(3065)
推荐(0) 编辑
三维坐标绕轴坐标旋转公式
摘要:原文来自:http://blog.csdn.net/bingcaihuang/article/details/5806139 三维空间中的旋转变换比二维空间中的旋转变换复杂。除了须要指定旋转角外,还需指定旋转轴。 若以坐标系的三个坐标轴x,y,z分别作为旋转轴,则点实际上仅仅在垂直坐标轴的平面上作二维旋转。此时用二维旋转公式就能够直接推出三维旋转变换矩阵。 规定在右手坐标系中,物体旋转的正方向是右手螺旋方向,即从该轴正半轴向原点看是逆时针方向。绕X轴绕Y轴绕Z轴
阅读全文
posted @
2013-11-14 11:29
知识天地
阅读(14363)
推荐(0) 编辑
Linux shell join命令详解
摘要:Linux join命令2012-02-09 17:49:00| 分类: SHELL | 标签:linux join 文件连接 |字号 订阅join命令 功能:“将两个文件里指定栏位同样的行连接起来”,即依照两个文件里共有的某一列,将相应的行拼接成一行。 join [options] file1 file2 注:这两个文件必须在已经在此列上是依照同样的规则进行了排序。join选项 -a FILENUM:除了显示匹配好的行另外将指定序号(1或2)文件里部匹配的行显示出来 -e EMPTY:将须要显示可是文件里不存在的域用此选项指定的字符取代 -i :忽略大写和小写 -...
阅读全文
posted @
2013-11-01 16:41
知识天地
阅读(29881)
推荐(0) 编辑
linux shell 字符串操作详解(获取长度、查找,替换)
摘要:在做shell批处理程序时候,常常会涉及到字符串相关操作。有许多命令语句,如:awk,sed都能够做字符串各种操作。 事实上shell内置一系列操作符号,能够达到相似效果,大家知道,使用内部操作符会省略启动外部程序等时间,因此速度会很的快。一、推断读取字符串值表达式含义${var}变量var的值, 与$var同样${var-DEFAULT}假设var沒有被声明, 那么就以$DEFAULT作为其值 *${var:-DEFAULT}假设var沒有被声明, 或者其值为空, 那么就以$DEFAULT作为其值 *${var=DEFAULT}假设var沒有被声明, 那么就以$DEFAULT作为其值 *${
阅读全文
posted @
2013-10-28 14:58
知识天地
阅读(7813)
推荐(0) 编辑
linux shell 中数组使用方法介绍
摘要:linux shell在编程方面比windows 批处理强大太多,不管是在循环、运算。已经数据类型方面都是不能比較的。 以下是个人在使用时候,对它在数组方面一些操作进行的总结。1.数组定义[chengmo@centos5 ~]$ a=(1 2 3 4 5)[chengmo@centos5 ~]$ echo $a1一对括号表示是数组,数组元素用“空格”符号切割开。2.数组读取与赋值得到长度:[chengmo@centos5 ~]$ echo ${#a[@]}5用${#数组名[@或*]} 能够得到数组长度读取:[chengmo@centos5 ~]$ echo ${a[2]}3[chengmo@c
阅读全文
posted @
2013-10-28 14:56
知识天地
阅读(500)
推荐(0) 编辑
Linux vim 中文显示乱码解决方法
摘要:因为在windows下默认是gb编码,而我的vim默认是utf-8(gedit默认也是utf-8),所以打开会成乱码。改动了一下配置文件,使vi支持gb编码就好了。$vi ~/.vimrclet &termencoding=&encodingset fileencodings=utf-8,gbk$:wq再次打开vi,显示就正常了。vim中编辑不同编码的文件时须要注意的一些地方此文解说的是vim编辑多字节编码文档(中文)所要了解的一些基础知识,注意其沒有涉及gvim,纯指字符终端下的vim。vim编码方面的基础知识:1,存在3个变量:encoding—-该选项使用于缓冲的文本(你
阅读全文
posted @
2013-10-25 13:47
知识天地
阅读(5681)
推荐(0) 编辑
使用Imagemagick批量加水印缩小图片的脚本
摘要:安装Imagemagick首先要安装Imagemagick本文HTML永久地址 docCentOS上安装yum install ImageMagick -yDebian上安装apt-get install ImageMagick -y批处理脚本#!/bin/bashfor each in /要处理的图片文件夹/*{.jpg,.gif}dos=`du -k $each | awk '{print $1}'`if [ $s -gt 10 ]; then convert -quality 80 -resize 600x800 $each $each composite -gravit
阅读全文
posted @
2013-10-14 18:23
知识天地
阅读(2004)
推荐(0) 编辑
How to find per-process I/O statistics on Linux
摘要:Newer Linux kernels have per-process I/O accounting and you can use the iotop tool to find out what’s performing I/O, but in many cases I’m trying to find the source of an I/O problem in an older kernel. I found sort of a hack-ish way to do that today, while trying to figure out why a system was bas
阅读全文
posted @
2013-10-09 14:23
知识天地
阅读(903)
推荐(0) 编辑
linux tail命令的使用方法详解
摘要:本文介绍Linux下tail命令的使用方法。linux tail命令用途是依照要求将指定的文件的最后部分输出到标准设备,通常是终端,通俗讲来,就是把某个档案文件的最后几行显示到终端上,假设该档案有更新,tail会自己主动刷新,确保你看到最新的档案内容。一、tail命令语法tail [ -f ] [ ...
阅读全文
posted @
2013-09-24 14:13
知识天地
阅读(366431)
推荐(9) 编辑
移动互联网的大机会还没有开始
摘要:今天给大家推荐一篇文章,是关于移动互联网的,来自福布斯中文网。“青出于蓝,而胜于蓝”用在移动互联网身上再合适不过了。91手机助手19亿美元的高价曾经让很多人诧异,然而在这个领域你必须习惯。当因特网随着Wi-Fi、GPRS以及3G、4G信号覆盖到我们的终端,当iOS尤其是Android系统无声地接管了手中的硬件,当GPS芯片及各种传感器被内置到我们的手机中时,移动互联网就在不断地给人以各种惊喜和巨大的想像空间。===============中国互联网史上最大的两起并购在过去的两个月爆发。9月16日,搜狗花落腾讯,占到搜索市场10%份额的搜狗最终估值12亿美元易主。而在两个月前同一天,91手机助手
阅读全文
posted @
2013-09-24 11:02
知识天地
阅读(1152)
推荐(0) 编辑
Linux下grep显示前后几行信息
摘要:标准unix/linux下的grep通过下面參数控制上下文 grep -C 5 foo file 显示file文件里匹配foo字串那行以及上下5行grep -B 5 foo file 显示foo及前5行grep -A 5 foo file 显示foo及后5行 查看grep版本号的方法是grep -V 假设想升级,升级的方法:最新的源代码(google或者百度搜索主页),编译安装到某个地方,比方 /home/aaa/bin/ 那么以后用的时候就用 /home/aaa/bin/grep ,或者把 /home/aaa/bin 加到PATH环境变量就可以。 假设你把最新编译好的grep覆盖到你...
阅读全文
posted @
2013-09-24 09:47
知识天地
阅读(235498)
推荐(13) 编辑
彼得林奇:赚钱密码(1990年一次演讲)
摘要:注:这是我看到的林奇最全面、最珍贵的投资理念,是他1990年5月1日在哈佛商学院纽约俱乐部的演讲稿。) 彼得•林奇在哈佛商学院纽约俱乐部1990年年度聚会--国际晚宴上的演讲,下面的这篇摘要就选自林奇在宴会上发表的精心准备的演讲: “活动的组织者告诉我什么都可以谈。我只知道一件事--股票。因此我很快便作出决定:我应该谈谈股票。我将尽力回顾少数几个要点,这些要点对我而言关系重大,并且我认为它们对试图在股市中赚钱的人也有重要的作用。” 规则1:了解你所持有的股票 “第一条规则是你必须了解你持有的股票。这听起来很简单,但是我们知道能做到这一点的人少之又少。你应该能够在两分钟或者更短的时间之内...
阅读全文
posted @
2013-09-23 22:38
知识天地
阅读(675)
推荐(0) 编辑