自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(48)
  • 资源 (1)
  • 收藏
  • 关注

原创 正则表达式

常用元字符.除换行符以外的任意字符\n 换行符\w 匹配字母/数字/下划线/汉字\s 匹配任意的空白符\b 匹配单词的开始或结束\d 匹配数字\转义字符^匹配字符串的开始$匹配字符串的结束常用限定符*任意数量,因此.*合在一起表示任意数量的不包括换行的字符+重复一次或更多次?重复0次或1次{n} 表示前面的字符重复n次{n

2017-09-14 10:41:47 281

原创 sed

sed它一次处理一行内容。sed是非交互式的编辑器。它不会修改文件,除非使用shell重定向来保存结果。默认情况下,所有的输出行都被打印到屏幕上。常用选项:-n∶使用安静(silent)模式。在一般 sed 的用法中,所有来自 STDIN的资料一般都会被列出到萤幕上。但如果加上 -n 参数后,则只有经过sed 特殊处理的那一行(或者动作)才会被列出来。常用命令:

2017-09-14 10:41:07 522

原创 机器学习

Cross Validation (交叉验证)cross validation大概的意思是:对于原始数据我们要将其一部分分为train_data,一部分分为test_data。train_data用于训练,test_data用于测试准确率。在test_data上测试的结果叫做validation_error。将一个算法作用于一个原始数据,我们不可能只做出随机的划分一次train和test_da

2017-09-14 10:40:34 397

原创 hive

一 基本命令:(注意hive命令都要加;)    sphive 进入数据仓库    show tables;   列出所有表名    desc  table_name; 列出表内数据段信息      quit;退出hiveselect * from aorder by rand() limit 10;  二 建立表:c

2017-09-14 10:40:16 333

原创 python

split():通过指定分隔符对字符串进行切片,如果参数num 有指定值,则仅分隔 num 个子字符串split()方法语法:str.split(str="", num=string.count(str)).str -- 分隔符,默认为所有的空字符,包括空格、换行(\n)、制表符(\t)等。num -- 分割次数。返回分割后的

2017-09-14 10:39:04 339

原创 awk

awk-f a  从脚本a中读取awk命令-F   指定分隔符-v var=var_value  在awk程序执行前,把awk变量var的值设置为var_value,这个var变量在BEGIN块中也有效,经常用来把shell变量引入awk程序。$0表示整行$1 表示第一列多文件:NR:表示awk开始执行程序后所读取的数据行数。

2017-09-14 10:38:30 475 1

原创 hadoop

一.Hadoop Streaming用法Usage: $HADOOP_HOME/bin/hadoop jar \$HADOOP_HOME/contrib/streaming/hadoop-*-streaming.jar [options]options:(1)-input:输入文件路径(2)-output:输出文件路径(3)-mapper:用户自己写

2017-09-14 10:38:01 234

原创 bash

24 bash的批量注释    :     EOF25 bash 的if    if [ -eq  ];then    elif [];then    else    fi     bash的for    for x in y;do    done    fi一定要写啊!!!!方括号周围都空格啊!!!!!26 bash中执行python想得到返回结果

2017-09-14 10:37:35 284

原创 常用的linux指令

1.sudo  -u hdp-map -H bash -l\n\p 更改当前用户    -u username 以指定用户的身份执行命令    -H 用什么解释器2.linux命令结果重定向        > 先清空再输出结果     >>直接在末尾添加3.wc 选项 文件名      -l 统计给定文件行数  -w 统计字数4.xargs用处:将标准输入转化为

2017-09-14 10:15:27 257

转载 KMP中的next和nextval的算法

版权声明:本文原创内容权归 http://blog.csdn.net/nanami809 所有,欢迎转载,但必须在明显位置保留此段声明,否则保留追究法律责任的权利.目录(?)[+]一、定义KMP算法是一种改进的字符串匹配算法,由D.E.Knuth,J.H.Morris和V.R.Pratt同时发现,因此人们称它为克努特——莫里斯——普拉特操作(简称KM

2017-04-23 15:41:37 15236 2

转载 HTTP协议三次握手,四次挥手过程

转载:http://blog.163.com/wangzhenbo85@126/blog/static/1013632822013423502833/?suggestedreading&wumii转载:http://blog.csdn.net/whuslei/article/details/6667471/TCP(Transmission Control Protocol) 传输控

2017-04-19 18:20:17 12755

转载 如何保证只能在堆(heap)上创建对象?

代码:[cpp] view plain copy print?class OnlyHeapClass  {  public:      OnlyHeapClass()      {      }        void Destroy()      {          delete this; // 等效于"

2017-04-10 19:45:29 395

原创 oracle 11g安装过程中的所有问题以及解决方法

1.创建数据库后打不开网页,提示服务器拒绝连接确认网址无误后,右键计算机->管理->服务和应用程序->服务,找到下面这个服务选择启动。2.启动sql developer 时提示enter full pathname of java.exe以及  oracle sql developer cannot find a J2SE SDE installed这个要手动去添加

2017-02-18 14:30:47 922

原创 C++primier总结

未完待续C++ Primer总结第一章1.endl是一个特殊的值,称为操作符,将它写入输出流是,不仅有输出换行的效果,还会刷新与设备相关联的缓冲区,这样用户可立即看到写入到流中的输出。2.printf(“”)中,注释/* */是不起作用的,在cout3.C++可以实现未知数目的输入    while(std::cin>>buf){}std::cin>>的返回值仍

2016-12-05 16:34:10 693

原创 通过常量表达式初始化的const变量定义在头文件中

《C++primer》中,讲到头文件中不可以包含定义,有三个例外:类,常量表达式初始化的const对象,inline。对于不是用常量表达式初始化的const对象,可以加上extern放在源文件中,并在头文件中加上extern声明。但是对于用常量表达式(即编译器就可以确定的)初始化的const对象,是不可以这么做,而要将定义全部放在头文件中,原因是该const对象用常量表达式初始化,那么该对

2016-11-18 10:44:33 1981

原创 《linux就是这个范儿》总结

未完待续……1.内核通过文件名来访问inode,同一个文件可能有多个文件名,通过硬连接来实现,此时inode引用次数+1,都指向同一个inode,因为文件属性在inode中保存,因此硬连接创建的文件与目标文件有相同属性。         对于软连接,只是新建了一个文件,文件属性与目标文件属性没有关系。2.程序的执行         在命令行下输入命令后,linux只会在环境变量$p

2016-11-15 20:54:27 1455

原创 C++总结

Day01:1.const 更严格的类型检查,C中可以暗度陈仓,通过指针来改一个const修饰的变量,但在C++中会被查出,等式左右两侧必须类型完全相同。2.更严格的enum3.表达式可以做左值。4.布尔类型,其实是enum{true,false}。5.C++ 不用指针 不用字符数组不用类型强转6.所有字符串有关的用string定义,C中从键盘中读取字符到一个字符数组中,不

2016-11-15 20:51:52 597

转载 关于C语言的fprintf与fwrite使用区别

转:http://blog.csdn.net/godenlove007/article/details/7721647 C语言把文件看作一个字符(字节)的序列,即由一个一个字符(字节)的数据顺序组成。根据数据的组织形式,可分为ASCII文件和二进制文件。ASCII文件又称为文本(text)文件,它的每个字节放一个ASCII代码,代表一个字符。二进制文件是把内存中的数据按其在内在中的存储形式

2016-11-15 16:29:46 363

原创 C++返回对象和返回引用

最大的区别在于,返回对象的话会在内存中根据返回的类型开辟一块区域,用返回的值对该内存进行初始化,如果是返回的对象,利用拷贝构造来初始化这个区域,但是这块区域并没有名字,就是说之后用户没办法访问到这个区域,也成为无名变量,它只能在接下来的代码中进行一次性的用途,要不作为参数传递,或者将值打印,再之后就会直接销毁,或者调用析构函数。而返回引用的话,引用的本质是对裸露的地址的二次包装,它实际返回的还

2016-11-11 16:15:23 1782

原创 字符数组和字符串指针在内存中存储

#include#includechar* strcpy1(){ char *p = "hello kitty"; printf("%s\n", p); return p;}int main(){ printf("%s", strcpy1()); return 0;}字符串在内存中存储在只读数据段,当定义一个字符串指针时,该指针指向这个只读区域,即使在函数中将这个指针返回

2016-11-07 16:53:13 5525 1

原创 C中引用重名的全局变量

#includeint a = 10;int main(){ int a = 20; printf("%d\n", a); return 0;}a的值为20,那么int a=20这句话,它是将全局变量a的值改变了吗?其实并不是,全局变量a的值并没有变化,看下例#includeint a = 10;int main(){ int*p = &a; int a = 20;

2016-11-01 15:36:37 889

转载 C++标准转换运算符const_cast

转载来源:http://www.cnblogs.com/ider/archive/2011/07/22/cpp_cast_operator_part2.htmlC++相比于C是一门面向对象的语言,面向对象最大的特点之一就是具有“多态性(Polymorphism)”。要想很好的使用多态性,就免不了要使用指针和引用,也免不了会碰到转换的问题,所以在这一篇,就把导师讲的以及在网上反复查阅

2016-11-01 11:16:34 202

转载 Mr. Process的一生-Linux内核的社会视角 (1)调度

偶遇奇文!转载地址:http://www.manio.org/cn/scheduling-of-linux-view-of-society/Written by manio (manioster{at)gmail.com)Linux内核是一个无比复杂的系统,要想看清大致的脉络也非易事。其实,可以把运行中的Linux想像成一个人类的社会,当中的进程就是社会中的

2016-10-20 10:58:12 278

转载 linux和windows下的“回车符”和“换行符”

转载来源:http://blog.sina.com.cn/s/blog_6cef0cb50100ml2x.html经常要对windows/linux下文本文件转换下 dos2unix他们间的区别其实是个回车换行的问题先来段历史回车”(Carriage Return)和“换行”(Line Feed)这两个概念的来历和区别。符号        ASCII码       

2016-10-19 20:21:00 445

原创 fgets函数

fgets(char * buf,int n,FILE* fp)函数在从fp中最多读取n个字符存储到buf指定的内存中,当一直没有遇到\n换行符时,则读取n-1个字符,最后补上\0;当遇到了\n时,则先将\n读入缓冲区,再读入\0,结束。gets(char* buf)从标准输入读取一行,但是不安全,因为没有指定最多字符的大小,如果标准输入非常的大,则会造成缓冲区越界,段错误。

2016-10-18 16:05:22 322

原创 交叉编译器安装步骤

安装步骤:arm-2009q3.tar.bz2          1)cd/home/tarena/esd1603          2) cp/mnt/hgfs/arm/env/arm-2009q3.tar.bz2 ./          3) 修改环境变量PATH             vi/home/tarena/.bashrc            export PA

2016-09-22 20:42:18 414

原创 一个makefile解析

项目有两个源文件和两个头文件  分别是led.c   led.h  gpio.c gpio.h分析makefile:1到8行:定义自动化变量以及编译连接的规则8到15行:makefile的核心,目标文件,依赖文件以及规则16到17:伪指令1:项目名字led用一个自动化变量PROG来表示,之后的$(PROG)就等于led,这样一旦以后项目的名字变化,只需要在第一行将led变化就可

2016-09-22 11:46:24 408 2

原创 在笔记本电脑上 ARM开发板和ubuntu的互相ping

折磨了两天终于弄好了如果有问题把防火墙,杀毒软件关闭,ubuntu里用ufw disable关闭防火墙首先相互ping一定是在统一网段内的,这里的问题在于笔记本电脑只有一个网口,而这个网口一定是与开发板通过网线互连的,笔记本开着无线网络,所以是有两个网卡。对于开发板上的网卡,不连接网络时是不通的,所以主机的本地连接一直都是断开,但一旦开发板与其他开始ping,主机的本地连接就开始启用,

2016-09-21 13:04:42 4820 1

原创 ubuntu中安装tftp服务器

tftp服务器是简单版的ftp,可以实现服务器和客户端之间的简单文件传输,包括上传下载。网上版本杂乱,此为亲测可用。1.sudo -i       设置为超级用户模式,否则之后每个命令前都要加sudo2.安装包 apt-get install tftp-hpa apt-get install xinetd3.建立服务器文件地址,设置权限。这个地址称为tftpbppt,也

2016-09-18 17:59:15 327 2

原创 UNIX/LINUX C总结

Unix/linux  C(uc)与标准C语言最大的区别在于,标准C只是一种编程语言,而在此基础上还依赖于具体的操作系统,脱离了unix/linux系统的uc在其他地方可能不被识别。(1)Unix/Linux系统的基本概述用gcc将源文件翻译为可执行文件过程:  预处理:主要宏替换,头文件替换。宏替换:#define用一个自定义的量代替一个数,如果要修改这个量的值,只要在最初的定义

2016-07-27 21:51:17 594

原创 对socket通信的理解

socket是“插座”的意思,两个进程之间通过socket来进行通信可以用手机来比喻,一般都是客户端向服务器发出访问请求,则客户端类比为拨电话的人,而服务器类比为接电话的人。两个用户要对话首先双方都要有一部手机,相当于双方用socket()函数创建一个socket套接字一样,然后这部手机要有一个电话号它才能有利用价值,也就是将套接字与通信地址进行挂钩。对于客户端,也就是准备拨电话的人,他必须要知道

2016-06-30 21:21:52 441

原创 socket Bind error:Address already in use

一:本地通信:unix domain socket 与网络socket编程最大的不同在于地址格式不同,用结构体socketaddr_un表示,网络地址是由ip加端口号决定,而domain socket的地址是一个socket类型的文件在文件系统的路径,该文件由bind()函数创建并绑定,如果bind时该文件已经存在,则绑定失败。因此每次把创建的socket文件删除或者bind一个新的socket文

2016-06-30 15:50:23 1896

原创 关于文件描述符

在linux下进行read和write时,发现当返回一个文件描述符,对它进行write操作,之后马上read,读出来的数据都是0,当时很奇怪,因为文件描述符只是一个int型的整数,不同于C下的fwrite,是直接返回一个文件指针,每次读写这个指针也会随之而变化,于是查找了关于文件描述符的资料。文件描述符在形式上是一个非负整数。实际上,它是一个索引值,指向内核为每一个进程所维护的该进程打开文件的

2016-06-15 10:25:22 1132

转载 深入理解进程间通信之消息队列,个人总结key值与id

转载来源:http://www.linuxidc.com/Linux/2015-07/119990.htm个人总结key值与id:id就是指每个消息队列的标记值,而key值就是表示如何找到这个消息队列,对于一个准备发送消息的进程,通过ftok()函数,可以将指定的文件加上自定义的值作为key值,创建一个消息队列,而在另一个准备接受的进程里,它不知道要在哪个消息队列里接收消息,于是它也通过一

2016-06-14 10:54:04 9924 2

原创 对linux中signal()函数的理解

信号可以看做程序运行期间的一种软件中断,信号是异步的,也就是说对于进程运行而言信号的发生是随机的,每当有信号产生时,进程会立即处理该信号。     人们可以通过键盘组合来发送特定的信号,比较重要的有:    SIGINT   2    采用ctrl+c产生该信号     SIGQUIT  3    采用ctrl+\产生该信号     SIGKILL  9    采用kill -

2016-06-12 21:11:23 963

转载 对fork,vfork 与exec的一些个人见解

转载来源http://blog.chinaunix.net/uid-20528014-id-4068931.html作者:[email protected]博客:fireaxe.blog.chinaunix.net1) 先说说forkfork在linux中用于进程的创建。它实际上是复制了一个与父进程(就是调用fork的进程)一模一样的子进程。其主要

2016-06-07 10:42:03 3787 2

原创 对模拟登陆代码的理解

#include #include int main() { char buf[10] = {}; int num = 0; for (num = 1;num <= 3;num++) { printf("请输入用户名:"); fgets(buf, 10, stdin); if (strlen(buf) == 9 && buf[8] != '\n') { scan

2016-05-29 17:53:07 237

转载 对静态库,共享库,动态加载库的理解

转载来源:http://blog.sina.com.cn/s/blog_8f3985400100uw5k.html在上面原文基础上整理了一下,主要突出了重点内容。        库文件一般就是编译好的二进制文件,用于在链接阶段同目标代码一起生成可执行文件,或者运行可执行文件的时候被加载,以便调用库文件中的某段代码。它与可执行文件相同之处是:两者都是编译好的二进制文件(本文中我们讨论

2016-05-18 21:15:52 3383

转载 Linux makefile 教程

转载来源 http://blog.csdn.net/liang13664759/article/details/1771246最近在学习Linux下的C编程,买了一本叫《Linux环境下的C编程指南》读到makefile就越看越迷糊,可能是我的理解能不行。            于是google到了以下这篇文章。通俗易懂。然后把它贴出来,方便学习。           后记

2016-05-14 12:02:01 368

原创 记录一些认为不错的数据结构程序算法

逆转链表:#include#includetypedef struct nod{ int data; struct nod* next;}nod;typedef struct list{ nod* top; nod* last; int cnt;}list;list* create(){ list* p = (list*)malloc(sizeof(list)

2016-05-11 18:06:49 330

mysql-8.0.12源码安装包

mysql-8.0.12源码安装包最新版本

2018-08-07

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除