沉于思考,默默学习!

你不能预知明天,但你可以利用今天。你不能样样顺利,但你可以事事尽力!

  博客园 :: 首页 :: 博问 :: 闪存 :: 新随笔 :: 联系 :: 订阅 订阅 :: 管理 ::

2010年10月17日

摘要: linux shell 可以用户定义函数,然后在shell脚本中可以随便调用。下面说说它的定义方法,以及调用需要注意那些事项。一、定义shell函数(define function)语法:[ function ] funname [()] { action; [return int;] } 说明: 1、可以带function fun() 定义,也可以直接fun() 定义,不带任何参数。 2、参... 阅读全文
posted @ 2010-10-17 02:24 程默 阅读(166106) 评论(9) 推荐(3) 编辑

摘要: 说到shell通配符(wildcard),大家在使用时候会经常用到。下面是一个实例:从上面这个实例,不知道大家有没有发现问题呢。我们先了解一下,通配符相关知识,再分析下这个实例吧。一、linux shell通配符(wildcard)通配符是由shell处理的(不是由所涉及到命令语句处理的,其实我们在shell各个命令中也没有发现有这些通配符介绍), 它只会出现在 命令的“参数&rdqu... 阅读全文
posted @ 2010-10-17 00:54 程默 阅读(160178) 评论(10) 推荐(21) 编辑

2010年10月15日

摘要: park,unpark,ord这3个函数,在我们工作中,用到它们的估计不多。 我在最近一个工作中,因为通讯需要用到二进制流,然后接口用php接收。当时在处理时候,查阅不少资料。因为它们使用确实比较少,也很少朋友工作中会用到它们。 在工作中,我也逐渐了解到park,unpark,ord对于二进制字节处理的强大。 下面我逐一介绍它们。 park,unpark,ord函数使用介绍 park函数说明:本函... 阅读全文
posted @ 2010-10-15 16:46 程默 阅读(7640) 评论(0) 推荐(0) 编辑

摘要: 我们经常会将2个有关联文本文件进行合并处理。分别从不同文件获取需要的列,然后,整体输出到一起。awk进行多文件处理时候,常常会遇到2个方面问题,第一个是怎么样合并多个文件为一个文件。第二个问题就是怎么样将多行合并为一行显示。我这里说下我的处理2种方法,还有实现思路。 实例文本:需要合并得到结果:100 wang man 90 80200 wangsan woman 80 70300 wangmin... 阅读全文
posted @ 2010-10-15 11:54 程默 阅读(20534) 评论(4) 推荐(2) 编辑

2010年10月14日

摘要: shell可以在不调用第3方命令,表示不同进制数据。这里总结以下表示方法。shell 脚本默认数值是由10 进制数处理,除非这个数字某种特殊的标记法或前缀开头. 才可以表示其它进制类型数值。如:以 0 开头就是 8 进制.以0x 开头就是16 进制数.使用 BASE#NUMBER 这种形式可以表示其它进制.BASE值:2-64.使用方法:其它进制转为10进制八进制转十进制:[chengmo@cen... 阅读全文
posted @ 2010-10-14 17:30 程默 阅读(69679) 评论(3) 推荐(2) 编辑

摘要: 关于linux数组定义,以及生成方法,请看:linux shell 动态生成 数组系列 seq使用技巧 。这里我主要说的是高效生成list 字符串,还有数组方法。 一、seq方法生成:[chengmo@centos5 shell]$ aNumList=$(seq 100);[chengmo@centos5 shell]$ echo $aNumList1 2 3 4 5 6 7 8 9 10 11 ... 阅读全文
posted @ 2010-10-14 16:51 程默 阅读(27667) 评论(2) 推荐(0) 编辑

摘要: linux shell有一套自己的流程控制语句,其中包括条件语句(if),循环语句(for,while),选择语句(case)。下面我将通过例子介绍下,各个语句使用方法。一、shell条件语句(if用法)if语句结构[if/then/elif/else/fi]if 条件测试语句 thenaction[elif 条件actionelseaction]fi如果对于:条件测试语句不是很清楚,可以参考:l... 阅读全文
posted @ 2010-10-14 16:07 程默 阅读(177382) 评论(6) 推荐(3) 编辑

2010年10月13日

摘要: 对于新手学习,mount 命令,一定会有很多疑问。其实我想疑问来源更多的是对linux系统本身特殊性了解问题。 linux是基于文件系统,所有的设备都会对应于:/dev/下面的设备。如: [chengmo@centos5 dev]$ ls | grep -E "^(sd|hd)"hdcsdasda1sda2sdbsdb1 sd*代表scic硬盘 因此,需要进行设备访问时候,我们需要进行系统挂载(m... 阅读全文
posted @ 2010-10-13 18:55 程默 阅读(84869) 评论(0) 推荐(1) 编辑

摘要: 在awk进行文本处理时候,我们可能会遇到。将多行合并到一行显示问题。 有点象sql里面,经常遇到的行转列的问题。 这里需要用到next语句。awknext语句使用:在循环逐行匹配,如果遇到next,就会跳过当前行,直接忽略下面语句。而进行下一行匹配。 text.txt 内容是:abcde [chengmo@centos5 shell]$ awk 'NR%2==1{next}{print NR,$0;}' text.txt 2 b4 d 当记录行号除以2余 1,就跳过当前行。下面的print NR,$0也不会执行。 下一行开始,程序有开始判断NR%2 值。这个时候记录行号是:2 阅读全文
posted @ 2010-10-13 15:16 程默 阅读(21302) 评论(5) 推荐(0) 编辑

2010年10月11日

摘要: Python(派森)英文名称:穿山甲。它是一种面向对象的用途非常广泛的编程语言,具有非常清晰的语法特点,适用于多种操作系统,可以在Windows和Unix这样的系统中运行。python的语法灵活,模块众多,是一门面向对象语言。 可以命令行运行,也可以开发窗口应用程序。还可以用作web cgi语言。 现在各种linux 版本,都少不了python,在常见的linux 应用工具中,很大一部分都是pyt... 阅读全文
posted @ 2010-10-11 17:26 程默 阅读(46228) 评论(1) 推荐(3) 编辑