ALL
文章平均质量分 73
KataDoc360
Raise your hands!
展开
-
磁盘IO性能监控(Linux 和 Windows) z
磁盘IO性能监控(Linux 和 Windows) 作者:终南 li.zhongnan@hotmail.com> 磁盘的IO性能是衡量计算机总体性能的一个重要指标。Linux提供了iostat命令来获却磁盘输入/输出(即IO)统计信息,Windows则提供了WMI接口,可以通过编写一个简单的脚本来获取与iostat相当的功能。1、Linux下的iostat命令转载 2008-11-21 19:48:00 · 431 阅读 · 0 评论 -
Makefile 简单编写(二) 我的文章 组建I z
Makefile 简单编写(二) ――静态库 很多基本上都和Makefile 简单编写(一)一样,只是最后产生库时有所不一样。ar rcs libstaticlib.a $(OBJECT_O) ar指令将全部*.o文件创建生库ar命令可以用来创建、修改库,也可以从转载 2008-11-21 23:05:00 · 363 阅读 · 0 评论 -
关于SHELL FOR循环 z
比如生成1~100的数然后可以让for来使用比如for 1 in `cmd 1 100`想问一下那个命令是什么 我记得有几种方法seqCODE:[Copy to clipboard]index=1while [ $index -le 100 ]do 。。。 index=$(($index +1))doneCODE:[Copy to clipboard]#!/bin/bashwhile :;do转载 2008-11-22 13:44:00 · 1056 阅读 · 0 评论 -
使用perl分析html文件(2) z
分析多个文件下面讲一个实际的例子:一个学生的网页作业的自动评分程序。这个程序首先由一些html文件来构建一些树形结构,然后把他们存储在一个@trees数组中: my @trees;foreach (@files) { print " building tree for $_ .../n" if $options{v}; my $tree = HTML::TreeBuil转载 2008-11-22 14:24:00 · 500 阅读 · 0 评论 -
vi删除操作大全 z
:0,$d 删除所有内容:%d 删除所有内容:%s//r//g 删除DOS方式的回车^M :%s=/s*$== 删除行尾空白 :%s/^(.*)/n/1//1$/ 删除重复行 :g/^/s*$/d 删除所有空行 :这个好用有没有人用过还有其他的方法吗?:g!/dd/d 删除不含字符串dd的行 :v/dd/d 同上 (译释:v == g!,就是不匹配!) :g/str1转载 2008-11-21 09:13:00 · 1082 阅读 · 0 评论 -
linux中的时间和日期 z
1、日历时间 (time_t) #include time.h>time_t time(time_t *calptr);struct tm *gmtime(const time_t *calptr);struct tm *localtime(const time_t *calptr);char *asctime(const struct tm *tmptr);char *ctime(转载 2008-11-21 19:46:00 · 469 阅读 · 0 评论 -
缓冲区溢出浪潮笔试题 z
今天笔试时把缓冲区溢出理解成了动态内存泄露,中间虽然有些联系,但是还是不对的,希望该试题的前辈看到我动态内存分配的如此熟练可以网开一面。 再回头看看他们的一个联系:当我动态内存不停的申请,申请......可以假定最后只剩下一定大小 刚好有个程序运行,再来把数据放到缓冲区,(因为系统总是默认有这么大的缓冲区的)这时就会出现缓冲区溢出现象:) 貌似有点道理转载 2008-11-21 19:47:00 · 660 阅读 · 0 评论 -
用dup2实现重定向 z
#include unistd.h>int dup(int filedes);int dup2(int filedes,int filedes2)参考apue里面的说明,可以用filedes2参数指定新描述符的数值,如果filedes2已经打开则先关闭。这样我们把STDOUT_FILENO当作filedes,这样标准输出就被重定向到filedes的描述符的文件下了。实验代码如下:转载 2008-11-22 13:41:00 · 437 阅读 · 0 评论 -
使用perl分析html文件(1) z
文章的背景是,作者在教授网页编辑的课程,他会给学生做一些使用nvu做网页作业,每个作业中有些特定的要求,作者苦于给学生的作业评分和做注释,所以就想到使用perl程序对学生的作品进行分析。perl的正则表达式在文本处理方面的能力已经非常卓越,并且还有分解网页的专用模组HTML::TreeBuilder。它提供了一个html的分解器,这个分解器可以从一个网页构建出一个元素的树形结构。并且,从一个网转载 2008-11-22 14:23:00 · 429 阅读 · 0 评论 -
大整数的乘法运算-C语言版(转) z
在计算机中,长整型(long int)变量的范围是 -2147483648 至 2147483647,因此若用长整型变量做乘法运算,乘积最多不能超过 10位数。即便用双精度型(double)变量,也仅能保证 16 位有效数字的精度。在某些需要更高精度的乘法运算的场合,需要用别的办法来实现乘法运算。 比较容易想到的是做多位数乘法时列竖式进行计算的方法,只要写出模拟这一过程的程序,就转载 2008-11-21 19:54:00 · 876 阅读 · 0 评论 -
Makefile 编写简单(一) 我的文章 组建I z
Makefile 编写简单(一) --单一的C工程 编写一个自己工程需要的Makefile其实很简单,以下是一个俺的一个实例,包含了中英文注释,小看一下,应该就很快明白了,要求不多的话,一个Makefile几句就能搞定,详细请查看Gcc参数设置和Makefile规则。1. 工程文件的分布./Makefile-------src (文件夹)转载 2008-11-21 23:04:00 · 409 阅读 · 0 评论 -
const与volatile关键字的用法浅析 z
对于const与volatile关键字的用法,以前也分析过,但是分析之后,过一段时间之后看了还是有点混淆,特别是const的几个用法,如果记忆不深刻,特别容易出错,今天又对这两个词的用法研究了一番。const最主要的特点就是只读, 有常量,常量指针,如果不是特别小心的分析c语言语句的书写格式,再加上指针的使用,就特别容易弄错。 Normal 0 7转载 2008-11-21 23:06:00 · 370 阅读 · 0 评论 -
搭建Linux环境下的DNS服务器 z
一 环境的假定 1两台机器,一台LINUX,机器名为LINUX,域名为tongqiang.cnIP地址为192.168.0.5,另一台机器为WIN98,机器名为tongqiang,IP地址从LINUX上DHCP服务器上获得。 二 建立DNS服务器(假设你的DNS软件包已经安装好了,而且是在安装LINUX是选择安装DNS服务器的) 建立DNS服务器只需要修改以下几个文件。 1转载 2008-11-22 14:18:00 · 297 阅读 · 0 评论 -
使用perl分析html文件(3) z
完成制作网页的最后的要求是页面外观的美观,遗憾的是,HTML::TreeBuilder或任何相关的模组都不能帮助完成对这个要求的评分,所以,本文的作者只能自己手动给最后一个要求评分。但是他有希望用perl在这项工作上帮点忙,所以就有了下面的一段代码:my $input = "";do { print "$str1 [$str2]: "; $input = STDIN>;转载 2008-11-22 14:25:00 · 425 阅读 · 0 评论 -
[Perl]IPC进程间内存共享 z
#!/usr/bin/perl -w#test_server run under administratoruse strict;use IPC::Shareable;my $glue = test.key;my %options = ( create => 1, exclusive => 0, mode => 0644, destroy => 1,);my转载 2008-11-22 14:27:00 · 701 阅读 · 0 评论 -
perl学习点滴1 匿名引用 z
下面是我对perl中的匿名存储的一点想法与总结, 点滴记录自己学习中的一些心得, 若有错误, 还请指正. 看下面这段代码: #!/usr/bin/perl$a=[1,2];print $a->[0], "/n";print $$a[0], "/n";print @$a[0], "/n";print $a[0], "/n";print "=" x 10;print "/n";转载 2008-11-22 14:28:00 · 392 阅读 · 0 评论 -
linux trap详解 z
在有些情况下,我们不希望自己的shell脚本在运行时刻被中断,比如说我们写得shell脚 本设为某一用户的默认shell,使这一用户进入系统后只能作某一项工作,如数据库备份, 我 们可不希望用户使用ctrl+C之类便进入到shell状态,做我们不希望做的事情。这便用到了信号 处理。 kill -l可以列出系统的信号名称,如下: zj@zj:~/Script/test$ kill -l 1) SI转载 2008-11-22 14:39:00 · 792 阅读 · 0 评论 -
shell 在shell中捕捉信号的trap命令 z
一. trap捕捉到信号之后,可以有三种反应方式: (1)执行一段程序来处理这一信号 (2)接受信号的默认操作 (3)忽视这一信号二. trap对上面三种方式提供了三种基本形式: 第一种形式的trap命令在shell接收到signal list清单中数值相同的信号时,将执行双引号中的命令串。 trap commands signal-list trap "commands" si转载 2008-11-22 14:40:00 · 383 阅读 · 0 评论 -
awk里的NR和FNR什么区别 z
对于单个 文件NR 和FNR 的 输出结果一样的 :# awk {print NR,$0} file1 1 a b c d2 a b d c3 a c b d4 a c d b5 a d c b6 a d b c awk {print FNR,$0} file1 1 a b c d2 a b d c3 a c b d4 a c d b5转载 2008-11-22 14:42:00 · 396 阅读 · 0 评论 -
Unix下信号灯和共享内存的使用方法 z
1互斥的概念在Unix中经常遇到多个进程需要使用同一资源的情况。共享资源对每个进程而言就是一份完全属于自己的拷贝。但是由于资源是共享的,就会产生问题:在任意两次操作之间,如果其它进程对该资源做了更改,本进程是无法知道其状态的,因此也不可能进行有效的控制。如果对资源的两次操作是有因果关系的,则更不允许其它进程在操作期间改变资源状态。因此必须提供互斥机制以使一次只能由一个进程使用资源。常用的方法有文转载 2008-11-21 23:04:00 · 822 阅读 · 0 评论 -
sed高级用法 z
首先,应该明白模式空间的定义。模式空间就是读入行所在的缓存,sed对文本行进行的处理都是在这个缓存中进行的。这对接下来的学习是有帮助的。 在正常情况下,sed将待处理的行读入模式空间,脚本中的命令就一条接着一条的对该行进行处理,直到脚本执行完毕,然后该行被输出,模式空间请空;然后重复刚才的动作,文件中的新的一行被读入,直到文件处理完备。 但是,各种各样的原因,比如用户希望在某个条件下脚本中转载 2008-11-23 21:48:00 · 255 阅读 · 0 评论 -
善用awk,事半功倍 z
在自己的程序中只用了一句:awk -F"[: ]“ ‘BEGIN [OFS="/t"} {print $1,$2,$3,$6,$7,$8,$10,$11,$12,$13} /tmp/tem_data > /tmp/tmp1上述一行代码的功能是,以冒号和空格对文本中的一行记录进行分隔,并以分隔符为Tab形式输出几个字段。想了两个小时,最后就是这么一行代码搞定了。自我感觉:Shell结合li转载 2008-11-24 15:08:00 · 276 阅读 · 0 评论 -
Linux下tty/pty/pts/ptmx详解 (转) z
基本概念:1> tty(终端设备的统称):tty一词源于Teletypes,或者teletypewriters,原来指的是电传打字机,是通过串行线用打印机键盘通过阅读和发送信息的东西,后来这东西被键盘与显示器取代,所以现在叫终端比较合适。终端是一种字符型设备,它有多种类型,通常使用tty来简称各种类型的终端设备。2> pty(虚拟终端):但是如果我们远程telnet到主机或使用xterm时不转载 2008-11-25 09:30:00 · 406 阅读 · 0 评论 -
tcpdump详解 z
tcpdump[-adeflnNOpqStvx] [-ccount] [-Ffile] [-iinterface] [-rfile][-ssnaplen] [-Ttype][-wfile][expression转载 2008-11-23 21:44:00 · 861 阅读 · 1 评论 -
Linux环境下subversion z
搞了几天,终于把SVN这东西理出点头绪出来,顺便也搭了个简单的环境出来。从网上搜索了些资料来看,发现大都是以apache+svn的形式作为服务器端,还有的就是配上svnmanager来进行管理,但在实际环境中,本着实用为主的情况下,感觉可以去掉这些,化复杂为简单。 服务器端:apr-1.2.12.tar.gzapr-util-1.2.12.tar.gzhttpd-2.2.4.tar.g转载 2008-11-25 09:33:00 · 306 阅读 · 0 评论 -
对话 UNIX: 关于 inode z
您是否曾经对一些 UNIX® 命令(如 df)中的 Iused 和 %Iused 的含义感到困惑,或者当人们讨论 inode 的时候不知所云?UNIX 和 Linux® 系统都使用了 inode ,当然 IBM® AIX® 也不例外。本文将向您介绍什么是 inode 、为什么对于 UNIX 来说 inode 非常重要、 inode 的结构,以及操作 inode 的命令。inode 是转载 2008-11-25 09:38:00 · 288 阅读 · 0 评论 -
多线程中的共用变量访问 z
for(i=0;iSRVRECORD_NUM;i++){ pWncCfg_Srv = &pWncCfg->WncCfg_Srv[i]; pWncCfg->nSrvNo[i] = i; if(pWncCfg_Srv->enable) { // i变量存在线程不同步问题 // pthread_create(&tid, NULL, thread_转载 2008-11-25 09:42:00 · 308 阅读 · 0 评论 -
Crontab实例 z
cron是一个linux下的定时执行工具,可以在无需人工干预的情况下运行作业。由于Cron 是Linux的内置服务,但它不自动起来,可以用以下的方法启动、关闭这个服务: /sbin/service crond start //启动服务 /sbin/service crond stop //关闭服务 /sbin/service crond restart //重启服务 /sbin/servi转载 2008-11-25 09:43:00 · 266 阅读 · 0 评论 -
Linux信号signal处理机制 z
信号是Linux编程中非常重要的部分,本文将详细介绍信号机制的基本概念、Linux对信号机制的大致实现方法、如何使用信号,以及有关信号的几个系统调用。 信号机制是进程之间相互传递消息的一种方法,信号全称为软中断信号,也有人称作软中断。从它的命名可以看出,它的实质和使用很象中断。所以,信号可以说是进程控制的一部分。 一、信号的基本概念转载 2008-11-25 09:55:00 · 307 阅读 · 0 评论 -
Perl(格式和字符串处理) z
学习Perl推荐使用Perl IDE(功能虽然无法和VS 2005,Eclipse 3.1那样功能那样强大),但是其支持断点处理功能,已经比直接使用命令行功能强大多了。此免费软件的下载点:http://open-perl-ide.sourceforge.net/其他Perl软件列表看此推荐:http://www.shengfang.org/blog/p/perlidesumm.php Perl转载 2008-11-22 22:59:00 · 1231 阅读 · 0 评论 -
Linux与windows文件互传技巧(by ftp) z
原文如下:文/印涛一.概述 本文讲述了在Linux主机与windows主机之间如何互传文件的方法。因为有的时候,linux主机中的一些文件可能会在windows环境下用到。例如在linux主机中抓了一些图片,想把它们传到windows主机上以作为word文档的插图。又或者从Windows主机上网,下载了一些linux的软件包,想传到linux主机中安装。在这些情况下,都需要一种方法来进行两者之间转载 2008-11-22 23:02:00 · 337 阅读 · 0 评论 -
用sed、tr、col对文本进行处理 z
利用sed向源代码中增加注释,test.sh源代码内容:$ cat test.sh#!/bin/sh#Just for test by ELM#elm-startlselm-endecho "all done"使用sed命令来注释elm-start和elm-end之间的内容:$ sed -i /elm-start/,/elm-end/s/^/#/ test.sh; cat test.sh#!转载 2008-11-23 21:43:00 · 592 阅读 · 0 评论 -
Grep学习笔记 z
1. grep简介2. grep正则表达式元字符集(基本集)3. 用于egrep和 grep -E的元字符扩展集4. POSIX字符类5. Grep命令选项6. 实例1. grep简介grep (global search regular expression(RE) and print out the line,全面搜索正则表达式并把行打印出来)是一种强大的文本搜索转载 2008-11-23 21:50:00 · 252 阅读 · 0 评论 -
[ZT]Shell之Sed z
Table of Contents1. Sed简介 2. 定址 3. Sed命令 4. 选项 5. 元字符集 6. 实例 7. 脚本1. Sed简介sed是一种在线编辑器,它一次处理一行内容。处理时,把当前处理的行存储在临时缓冲区中,称为“模式空间”(pattern space),接着用sed命令处理缓冲区中的内容,处理完成后,把缓冲区的内容送往屏幕。接着处理下一行,这样不断重复转载 2008-11-24 09:46:00 · 303 阅读 · 0 评论 -
介绍Linux内核函数Start z
Start_kernel()中调用了一系列初始化函数,以完成kernel本身的设置。这些动作有的是公共的,有的则是需要配置的才会执行的。 在start_kernel()函数中, 输出Linux版本信息(printk(linux_banner)) 设置与体系结构相关的环境(setup_arch()) 页表结构初始化(paging_init()) 使用"arch/alpha/kerne转载 2008-11-24 10:09:00 · 315 阅读 · 0 评论 -
sed 特殊用法[z] z
一. 替换1.神奇变换(y命令的使用)代码:sed y/ori_letter_list/target_letter_list/ filename代码:cat filename1234567890234567890134567890124567890123测试将文件中1换成A将文件中2换成B...将文件中0换成J代码:sed y/1234567890/ABCDEFGHIJ/ filename转载 2008-11-24 11:18:00 · 329 阅读 · 0 评论 -
awk编程 z
14. awk编程14.1. 变量在awk中,变量不需要定义就可以直接使用,变量类型可以是数字或字符串。赋值格式:Variable = expression,如$ awk $1 ~/test/{count = $2 + $3; print count} test,上式的作用是,awk先扫描第一个域,一旦test匹配,就把第二个域的值加上第三个域的值,转载 2008-11-24 15:07:00 · 318 阅读 · 0 评论 -
Linux内核等待队列机制介绍 z
相信很多写程序的人都写过 socket 的程序。当我们 open 一个 socket 之后,接着去读取这个 socket,如果此时没有任何资料可供读取,那 read 就会 block 住。(这是没有加上 O_NONBLOCK 的情形),直到有资料可读取才会传回来。在 Linux kernel 里有一个数据结构可以帮助我们做到这样的功能。这个数据结构就是这里要跟各位介绍的 wait queue。转载 2008-11-25 09:44:00 · 273 阅读 · 0 评论 -
Linux环境进程间通信(三):消息队列 z
级别: 初级郑彦兴 (mlinux@163.com)国防科大计算机学院2003 年 1 月 17 日本系列文章中的前两部分,我们探讨管道及信号两种通信机制,本文将深入第三部分,介绍系统 V 消息队列及其相应 API。消息队列(也叫做报文队列)能够克服早期unix通信机制的一些缺点。作为早期unix通信机制之一的信号能够传送的信息量有限,后来虽然POSIX 1003.1b在信号的实时性方面转载 2008-11-25 09:57:00 · 310 阅读 · 0 评论 -
Perl如何处理字符串 z
在Perl看来, 字符串只有两种形式. 一种是octets, 即8位序列, 也就是我们通常说的字节数组. 另一种utf8编码的字符串, perl管它叫string. 也就是说: Perl只认识两种编码: Ascii(octets)和utf8(string) 本文内容适用于perl 5.8及其以上版本.perl internal form在Perl看来, 字符串只有两种形式. 一转载 2008-11-22 22:58:00 · 919 阅读 · 0 评论