- 博客(34)
- 资源 (23)
- 收藏
- 关注
原创 linux 命令c语言代码实现
自己学习《APUE》时写的linux下一些命令(大概40个左右)实现,仅当学习使用,这些命令包括cat cp echo head ls paste rmdir tail umask who chattr cut expand join mkdir pwd sed tee uniq chgrp date find last mkfifo reboot sort wc chmod df ln mv rename split touch which chown du grep lsattr od rm tac t
2014-06-25 13:45:16 1947 1
原创 关于 windows 互斥锁CRITICAL_SECTION 多次加锁,需要多少释放的问题
我们程序里,有时某个线程会对锁,连续加两次锁,我以前以为只要释放一次,就会释放该临界区,可不是这样的。应该几次加锁,就应该几次释放锁。 CRITICAL_SECTION mylock;DWORD WINAPI ThreadFunc3(LPVOID lpParameter){ EnterCriticalSection(&mylock); cout EnterCrit
2013-08-14 15:14:25 2197
原创 计划
最近工作和生活有点不尽人意。计划按如下方法来改善:一 对于工作:要积极,不要觉得不好解决,就“忽悠”老板。不要干与工作不相关的事情,工作时间只干与工作相关的事情,工作做完,应该看下公司其它人写的代码,我们组有两个人写的代码我可以学习。讲求工作效率,对于运营上出的问题,要及时沟通,需要运营人员采集哪些信息,第一次沟通,就要尽可能的说全。免得再次沟通所带来的浪费时间。遇到事,要
2013-08-14 10:45:48 728 1
原创 利用ftp在windows与linux服务器之间传文件
windows与linux服务器之间传文件有多种方法,比如SSH之类的,但用起来比较慢,我在这儿用ftp来传,快些。 1 在运行中输入 cmd2 C:\Documents and Settings\Administrator>ftp ftp>3 进入了ftp,此时输入你要建立连接,类似如下 ftp> open 192.168.1.20 Connected
2013-06-08 11:42:11 873
原创 随想 杂谈
由于公司安排,最近在接别人代码。看了两天了,看一会儿总是要走神,感觉工作状态不佳呀。 感觉自己存在一些不足没明白的地方没及时提出来对技术没得那种所谓的追求得 但愿自己在接下来的工作中及时改正这些不足,希望自己也能成为一个合格的程序员为自己加油!
2013-04-11 15:25:48 605
原创 无BOM的条件下C语言判断一个文件是否为UTF-8编码代码(windows,linux通用)
大家知道判断一个文件编码如若有BOM位(方便编辑器识别是何种编码,在文件开头处加的标志位,我是这样理解BOM的,并且我们用一般的编辑器打开是看不到BOM位的,我们必须用能二进制编辑的编辑器打开才看得到BOM位),比如如果是UTF-8,如若有BOM位,其前3位分别是EF,BB,BF。有BOM的情况下,我们只需判断关三个字节就可知该文件的编码方式(这是大多数情况),但如果该文件没有BOM呢(我们程
2012-11-27 22:47:56 3007 2
原创 GB2312编码与UTF-8编码的相互转换代码(linux windows下通用)
以下是GB2312编码与UTF-8编码相互转换,自测通过。思路:GB2312编码与UTF-8编码相互转换,是通过转化为中间编码(UNICODE),再转化为其它编码//-----------------------------------------------------------------------------------------------------------------
2012-11-27 22:34:32 3178
原创 均衡服务器开发自测完毕
今天我负责的项目:消息盒项目均衡服务器开发与自测完成,总计用时10个工作日。这是我第一次完全亲自动手开发,感觉不错,也熟悉了现在公司平台接口的调用,也学到不少知识,在此把此时感想写下。经验:1像师父说的那样,自己开发代码前最好先写测试代码,原因:当写测试时,会想着用各种情况去测试,写完测试后,然后去写开发代码时,会想到我需要注意哪些地方。2在开发前,最好先设计好了再动手开发,不要想
2012-09-26 18:18:41 497
原创 小结
已经来到这个公司两个月了,这两个月工作有激情,也有郁闷。主要是发现自己工作中的不足之处,在此主要是想把工作中不足之处写下来,以提醒以后的工作与学习。1工作中的激情:做linux无盘,从组长那儿学到很多关于linux系统方面的知识(包括命令,脚本都学到不少)。觉得每天的收获非常多,故而有激情。2工作中的郁闷:以前没接触过windows上的开发,VC也没用过,接下来的一个任务是C++ buil
2012-07-15 12:17:48 316
原创 linux shell中双引号,单引号,反单引号
shell中的这三个引号容易混淆。双引号仍然可以保有变量的内容,但单引号仅能是一般字符,而不会有特殊符号比如,如果双引号中存在变量,则会在双引号中将该变量在原地展开,而单引号不会将其作为变量,而是将其作为普通的字符例:[root@lufubo-centos kernel]# name=lufubo[root@lufubo-centos kernel]# echo "my n
2012-06-23 23:25:56 1518 1
原创 linux 常用压缩与解压缩命令
以下是linux下常用的压缩与解压命令。1 Compress,是非常老的命令,现在基本不用了,所以这里就不说了。2 gzip,zcat是应用最广的压缩命令注意:对于目录是分别压缩选项:-c:将压缩的数据输出到屏幕上,可通过数据数据流重定向来处理;-d:解压缩的参数;-v:可显示压缩比等信息-#压缩等级,-1 最快,但压缩比最差,-9最慢,但压缩比最高
2012-06-23 20:24:28 453
原创 windows下测试硬盘的读写性能(这是模拟我们公司业务对硬盘读写速度的测试)
/***********************************************************************************注意:这个代码是根据我们公司具体情况来写的,测试我们公司业务数据的读写性能(看看有多少数据的读写时间我们不能接受)的。可能与你的实际情况不相符合。1 该代码仅仅考虑读写速度,不考虑线程间的同步之类的2 该代码是模拟根据业
2012-06-11 19:35:03 3042
原创 定制自己的linux内核
1内核源代码的获取从网站http://www.kernel.org网站上下载例如我下载的是linux-2.6.27.62.tar.bz22 解压内核bzip2 -d linux-2.6.27.62.tar.bz2tar -xvf linux-2.6.27.62.tar3定制内核定制内核有很多种方法:make config(最基本方法),make defconfig(默认
2012-06-06 12:48:00 2065
原创 红帽6.2 DOS无盘 NetWare 制作
大步骤:1 编译红帽6.2内核(把IPX,NCPFS编译进内核,再选上mars_nwe 选上)2 启动新制作的内核3 配置mars_nwe,并启动 1 编译红帽6.2内核(把IPX,NCPFS编译进内核,再选上mars_nwe 选上)红帽是发行版,编译有点老火,我是编的原代码,我做的具体步骤如下:rpm -ivh kernel-2.6.32-220.el6.src.
2012-06-05 18:33:43 1837
原创 linux 中利用samba 与windows资源共享
1 在linux中安装samba,并启动 。 查看是否安装可用rpm -qa | grep samba 命令查看是否已经安装。 启动它:service smb start2 添加samba用户与密码: 添加用户:smbpasswd -a lufubo #lufubo是我增加的samba的用户 然后会提示你输入用户的密码。3 准备共享的目录
2012-06-03 09:43:02 514
原创 dos2unix命令(windows下编辑linux文本要用)
这是第二次遇到以下错误了在windows下编辑的文本,拿到linux下执行总是报看不懂的错误后来找到错误原因:windows与linux的文本文件的行结束标志不同。在linux中,文本文件以“/n”表示回车换行,而windows用“\r\n”表示回车换行。所以在linux中使用windows下的文本文件常常出错。为了避免这种错误,linux提供了两种文本格式相互转化的命令:
2012-06-03 09:42:39 1312
原创 linux shell 用syslog记录日志
[root@localhost test]#logger hello lufubo[root@localhost test]#tail -n 1 /var/log/messagesMay 31 15:55:18 lufubo lufubo: hello lufubo
2012-06-03 09:36:15 1788
原创 linux 计算 命令的执行时间
time[root@localhost ~]# time lsanaconda-ks.cfg error install.log install.log.syslog sshreal 0m0.114s #命令开始到结束的时间user 0m0.001s #进程花费在用户模式的CPU时间,真正执行的时间sys 0m0
2012-06-03 09:34:08 1310
原创 linux统计磁盘的使用情况 df du
df是disk free的缩写,du是disk usage的缩写。du 某个文件占用的磁盘空间,默认为字节。[root@localhost test]# du this.tar.gz 4 this.tar.gz想要标准的输出,则加-h[root@localhost test]# du -h test.sh 4.0K test.sh
2012-06-03 09:33:33 852
原创 linux网络流量与端口分析
我们直接看例子:[root@localhost lufubo]#lsof -iCOMMAND PID USER FD TYPE DEVICE SIZE NODE NAMEportmap 1785 rpc 3u IPv4 4974 UDP *:sunrpc portmap 1785 rpc 4u IPv4
2012-06-03 09:32:54 1410
原创 linux shell中的迭代
1 迭代每一行:#! /bin/bashwhile read line;do echo $line;done 2 迭代一行中的每个单词[root@localhost test]# for word in "hello lufubo"; do echo $word; done;hello lufubo
2012-06-03 09:31:21 1312
原创 linux awk学习
基本结构如下:awk 'BEGIN{ print "start" } pattern {commands } END {print "end"} '这三部份是可选的。且脚本通常会被包含在单引号或者双引号中:[root@localhost test]# cat test.sh| wc -l6[root@localhost test]# awk 'BEGIN{ i=
2012-06-03 09:30:45 481
原创 linux shell cut按列切分文件
linux cut按列切分文件-f:选择的哪些列--complement 补集运算例:[root@localhost test]# cat student.data NO Name Mark1 lufubo 982 cbiao 88[root@localhost test]# cut -f2,3 student.da
2012-06-03 09:29:54 10983
原创 linux shell 查找文件差异并进行修补
例:[root@localhost test]# cat A.txt 125[root@localhost test]# cat B.txt 136[root@localhost test]# diff A.txt B.txt -u--- A.txt 2012-05-19 11:09:01.000000000 +0800+++ B.t
2012-06-03 09:28:52 1782
原创 linux 文本文件的交集,差集 comm命令
comm命令用于两个文件之间的比较,输入的文件必须是经过排过序的文件例 :[root@localhost test]# cat A.txt 125[root@localhost test]# cat B.txt 136[root@localhost test]# comm A.txt B.txt 12
2012-06-03 09:27:31 918
原创 linux中生成任意大小的文件
可以利用dd命令[root@localhost test]# dd if=/dev/zero of=data.txt bs=1M count=22+0 records in2+0 records out2097152 bytes (2.1 MB) copied, 0.0140437 seconds, 149 MB/s[root@localhost test]# ll
2012-06-03 09:26:37 785
原创 shell中交互输入自动化
shell中交互输入自动化shell中有时我们需要交互,但是呢我们又不想每次从stdin输入,想让其自动化,这时我们就要使shell交互输入自动化了。这个功能很有用的哟。好好学习。1 利用重定向 重定向的方法应该是最简单的例:以下的test.sh是要求我们从stdin中分别输入no,name然后将输入的no,name打印出来[root@localhost t
2012-06-03 09:25:57 40189 1
原创 shell中常用的% %% # ##
${VAR%reg}:从VAR中删除位于%右侧的通配符,通配符从右向左进行匹配,非贪婪操作${VAR%%reg}从VAR中删除位于%右侧的通配符,通配符从右向左进行匹配,是贪婪操作${VAR#reg}从VAR中删除位于#右侧的通配符,通配符从左向右进行匹配,非贪婪操作${VAR##reg}从VAR中删除位于#右侧的通配符,通配符从左向右进行匹配,是贪婪操作例题:[r
2012-06-03 09:24:55 1072
原创 linux uniq命令
消除重复的内容只能用于已经排过序的数据输入,经常与sort命令结合起来使用例如:[root@localhost test]# cat file1.txt bashfosshackhack[root@localhost test]# uniq file1.txt bashfosshack[root@localhost test]# sort fil
2012-06-03 09:23:54 475
原创 linux 校验与核实
md5sum用法:[root@localhost test]# md5sum text.txt > file_sum.md5 [root@localhost test]# md5sum -c file_sum.md5 text.txt: OKsha1sum:用法:[root@localhost test]# sha1sum t
2012-06-03 09:22:43 344
原创 linux tr命令对来自标准输入的字符进行转换、删除及压缩
tr命令对来自标准输入的字符进行转换、删除及压缩,是个转换命令tr [options] set1 set2 就是把set1集合中的内容换成set2集合中的内容1将大写字母变为小写字母[root@localhost test]# echo "HELLO LUFUBO NICE TO MEET YOU" |tr 'A-Z' 'a-z'hello lufu
2012-06-03 09:21:15 354
原创 linux xargs 将标准输入数据转换成命令行参数
1 将多行输入转化为单行输出:[root@localhost test]# cat text.txt123[root@localhost test]# cat text.txt | xargs1 2 32将单行输入转成多行输出[root@localhost test]# ca
2012-06-03 09:19:33 781
原创 linux vi常用命令 提高编辑效率
以前用vi只会最基本的几个命令,看到组长用vi,编辑效率明显提高,SO,我也来练习下。简单介绍vi的三种模式:一般模式,命令模式,编辑模式。以下的命令就是最常用的几种,先学最最常用的嘛。一般模式下的光标移动:0 ( 这是数字哈)将光标移动到这一行的第一个字符处。$ 将光标移动到这一行的最后一个字符处。G 移动到这个文件的最后一
2012-06-01 14:50:40 333
linux命令c语言自己实现(大概40来个)
2014-06-25
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人