自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(113)
  • 收藏
  • 关注

原创 Redis笔记

数据类型Redis 支持5中数据类型字符串(string)Redis 中字符串是一个字节序列. Redis 中的字符串是二进制安全的, 这意味着它们的长度不由任何特殊的终止字符决定。因此,可以在一个字符串中存储高达512兆字节的任何内容 例redis 127.0.0.1:6379> SET name "value"OKredis 127.0.0.1:6379>...

2018-07-19 01:03:11 417

原创 Go 命令

Go语言自带有一套完整的命令操作工具,可以通过在命令行中执行go来查看它们:buildcleanfmtgetinstalltesttoolgeneraterun

2018-07-18 01:04:13 265

原创 GO环境变量

GOROOT,在Linux系统中一般安装在/usr/go或者/usr/local/go,这样Linux系统中的PATH变量一般都包含了这两个目录,所以就可以直接运行go命令,而Windows系统中一般默认安装在C:\go中自定义 GO安装路径, 可修改环境变量配置文件 export GOROOT=$HOME/goGOPATHgo的工作目录,这个目录指定了需要从哪个地方寻找GO...

2018-07-18 00:57:06 2734

原创 Liunx 安装bashmarks

下载源码git clone https://github.com/lxbwolf/bashmarks.git 把bashmarks.sh复制到~/bin/添加环境变量在环境变量文件里, 添加 . ~/bin/bashmarks.sh相关命令s <bookmark_name> - Saves the current directory as "bookmark...

2018-07-13 00:34:21 287

原创 linux 安装thefuck

下载源码git clone https://github.com/lxbwolf/thefuck.git配置环境变量把thefuck/**/libexec/bin 添加进环境变量eval $(thefuck --alias fuck)

2018-07-13 00:30:33 2184

原创 linux 配置samba

开发机安装 sambayum install samba samba-client samba-swat添加账号sampasswd -a 用户名 用户名只能为已经存在的账号配置共享文件夹编辑etc/samba/smb.conf, 追加内容: [samba_share_dir]comment = samba_sharepath = /home/lxb/sam...

2018-07-13 00:22:30 152

原创 nginx 配置中的 rewrite

语法lastbreak 中止 rewrite, 不再继续匹配redirect 返回临时重定向的 HTTP 状态302permanet 返回永久重定向的 HTTP 状态301last 和 break 的不同: break 是终止当前location 的 rewrite 检测, 且不再进行 location 匹配; last是终止当前location的rewrite检测,但会继续...

2018-06-16 23:20:25 2922

原创 nginx 寻找index 原理

当nginx发现需要/web/echo/index.php 文件时, 就会向内核发起 IO 系统调用(因为要跟硬件打交道, 这里的硬件是指硬盘, 通常需要靠内核来操作, 而内核提供的这些功能是通过系统调用来实现的), 告诉内核, 我需要这个文件, 内核从/ 开始找到web 目录, 再在web 目录下找到echo 目录, 最后在echo 目录下找到index.php 文件, 于是把这个index.p...

2018-06-16 01:26:10 2685

原创 nginx配置中的location

语法 location [=|~|~*|^~] /uri/ {...} 上下文: server此命令随URL 不同而接受不同的结构. 可以配置使用常规字符串和正则表达式. 若使用正则表达式, 则必须使用~*前缀(选择不区分大小写的匹配) 或~前缀(区分大小写的匹配)= 表示uri 以某个常规字符串开头, 理解为匹配url 路径即可. nginx 不对url 做编码, 因此请求为/s...

2018-06-14 23:25:12 783

原创 NERDTree 使用

F3:自定义启用/隐藏目录树 ?: 快速帮助文档 o: 打开一个目录或者打开文件,创建的是buffer,也可以用来打开书签 go: 打开一个文件,但是光标仍然留在NERDTree,创建的是buffer t: 打开一个文件,创建的是Tab,对书签同样生效 T: 打开一个文件,但是光标仍然留在NERDTree,创建的是Tab,对书签同样生效 i: 水平分割创建文件的窗口,创建的是buffe...

2018-06-09 11:44:35 2986

原创 HTTP协议笔记

HTTP协议的特点: 1. 支持客户端/服务器模式 2. 简单快速: 客户端向服务器请求服务时, 只需传送请求方法和路径. 请求方法常用的有GET, HEAD, POST. 每种方法规定了客户端与服务器联系的类型. 由于HTTP协议简单, 使得HTTP服务器的程序规模小, 因而通信速度很快. 3. 灵活: HTTP 允许传输任意类型的数据对象. 正在传输的类型由Content-Type加以标...

2018-05-30 23:11:14 178

原创 qt同步方式发送post请求

不成功的方式: 1. QNetworkReply的isFinished()函数, 通过while循环判断reply是否已经结束, 结束后再调用readAll()读取响应信息, 结果与判断isRunning() 方式结果一样, 都会进入死循环, 没有响应. 2. QNetworkReply继承自QIODevice, 尝试调用QIODevice的waitForReadyRead()方法, 结果不阻...

2018-05-22 11:12:46 3090 1

原创 Qt 程序打包

设置程序图标把ico文件放到源文件目录下, 命名为”test.ico”创建一个myico.rc 文件, 输入如下内容 IDI_ICON1 ICON DISCARDABLE "test.ico"在pro文件写入 RC_FILE = myico.rc执行qmake, 编译编译, 打包选择release编译运行将生成的exe文件放到某个路径下, 如 Desktop/Test...

2018-05-03 23:03:01 147

原创 Gerrit+apache安装

使用gerrit自带的数据库h2, 验证方式为HTTP, SMTP 服务器未配置git 安装可直接从yum 源安装gerrit 安装先添加gerrit 用户. gerrit 从2.10开始, 换成了新版界面. 几乎国内所有的镜像都会下载失败, 需要翻墙下载. 下载完成后, 初始化命令为: java -jar gerrrit-war init -d /home/gerr...

2018-05-02 23:56:23 2540

原创 Qt工程的几种文件

*.proqmake的工程(project)文件 例子:TEMPLATE = appCONFIG += QTQT += core guiTARGET = somenameSOURCES += main.cpp \ widget.cppHEADERS += widget.hFORMS += widget.ui前三行是qmake的默认值, 都可以...

2018-04-20 22:23:24 1620

原创 Qt UI 编码规范

变量声明每行只声明一个变量避免使用短的/无意义的命名当一个变量被用到时再声明// Wrongint a, b;char* c, * d;// Correctint height;int width;char* nameOfOne;char* nameOfOther;变量命名变量名/函数名采用驼峰命名法(lowerCaseCamel), 首字母缩写词出现...

2018-04-02 11:10:49 821

原创 CentOS7 升级gcc和gdb

升级后版本: gcc-5.4.0 gdb-7.11.1安装开发必备环境yum groupinstall "Development Tools"yum install glibc-static libstdc++-static编译安装gcc-5.4.0gcc下载地址tar -xvf gcc-5.4.0.tar.bz2cd gcc-5.4.0./contr...

2018-03-28 11:30:33 3303 1

原创 ffmpeg推流报错

在使用dshow设备推流时,经常会报出real time buffer too full dropping frames的错误信息,其原因在这篇文章里有写到,可以通过添加rtbufsize参数来解决,码率越高对应的rtbufsize就需要越高,但过高的rtbufsize会带来视频的延时,若要保持同步,可能就需要对音频人为增加一定的延时。而根据我的测试,即使不添加rtbufszie参数,虽然会报出错...

2018-03-27 14:33:43 4724

转载 ffmpeg视音频同步

原文地址: https://blog.csdn.net/nonmarking/article/details/50522413对于直播流来说, 只考虑发送端的同步问题, 原理如下: 1. 解析视音频, 讲视频流和音频流的时间戳用同样的时间基准表示 2. 比较转换后的两个时间戳, 找出较小值, 对应发送偏慢的流 3. 读取, 转码, 发送相应的流, 同时, 若该流的转码时间很快, 超前于w...

2018-03-27 14:32:10 434

原创 protocol buffer

Developer Guide.proto 文件message Person { required string name = 1; required int32 id = 2; optional string email = 3; enum PhoneType { MOBILE = 0; HOME = 1; WORK = 2; } ...

2018-03-21 17:36:34 178

原创 qt的pro文件

注释使用# 进行行注释模板TEMPLATE = app 告诉qmake为这个应用程序生成哪种makefile. - app 默认值. 生成app的makefile - lib 生成一个库的makefile - vcapp 生成一个应用程序的VisualStudio项目文件 - vclib 生成一个库的VisualStudio 项目文件 - subdirs 生成make...

2018-03-21 09:52:44 383

转载 基于FFmpeg的摄像头直播(推流)

原文地址: http://blog.csdn.net/wh8_2011/article/details/73506154本文实现: 读取PC摄像头视频数据并以RTMP协议发送为直播流. 示例包含 1. FFmpeg的libavdevice的使用 2. 视频编码, 解码, 推流的基本流程要使用libavdevice的相关函数, 首先需要注册相关组件 avdevice_register_...

2018-01-13 20:34:57 16908 2

转载 基于FFmpeg的推送文件到RTMP服务器

原文地址: http://blog.csdn.net/leixiaohua1020/article/details/39803457将本地的MOV/AVI/MKV/MP4/FLV等格式的媒体文件, 通过流媒体协议(RTMP, HTTP, UDP, TCP, RTP等)以直播流的形式推送出去. 在这个推流器的基础上, 可以进行以下几种方式的修改, 实现各式各样的推流器. 例如: * 将输入

2018-01-13 20:22:58 1072 1

原创 ffmpeg工具推流

SRR测试网址 http://www.ossrs.net/srs.release/trunk/research/players/srs_player.html 获取 git clone https://github.com/ossrs/srs.gitconfigure make cd srs/trunk ./configure && make开启服务器 ./ob...

2018-01-12 19:06:47 504

原创 命令组和代码块

命令组 和 代码块() 命令组. 如 (a=hello,echo $a) 在()中的命令列表, 将作为一个子Shell来运行 在()中的变量, 由于是在子Shell总运行的, 因此对脚本剩下的部分是不可见的如a=123(a=321;)echo "a=$a" # a=123# 在()中的a变量, 更像是一个局部变量{} 代码块, 又称内部组. 这个结构创建了一个匿名的函数, 与函数不同的是

2017-10-02 22:38:15 401

原创 Java Log

Log.d(TAG,new Exception().getStackTrace()[0].getMethodName()); //函数名 Log.d(TAG, Thread.currentThread().getStackTrace()[2].getMethodName()); //函数名 Log.d(TAG, “”+Thread.currentThread().getStackTrace()[

2017-09-18 11:18:27 545

原创 Shell中的冒号

冒号(:) 是一个空命令. 作用与true相同. “:”是一个bash内建命令, 返回值为0, 即与true相同. 例::echo $? # 0死循环while :do list_1 list_2doneif/then 中的占位符if listthen : # 什么都不做, 引出分支else take-some-actionfi在一个2元命令中, 提供一个占位符

2017-09-07 17:52:21 2370

原创 Shell编程中select用法

select提供了一个构建交互式菜单程序的方式, 语法结构: select name [ in word ] ; do list ; done例:#!/bin/bashselect i in a b c ddo echo $idone执行结果$ ./select.sh 1) a2) b3) c4) d#? 选择索引$ ./select.sh 1) a2) b3) c

2017-09-05 16:18:03 2311

原创 在shell脚本中使用ls命令的注意事项

请对比如下两个测试:$ for i in `ls /etc`;do echo $i;doneadjtimeadobeappstream.confarch-releaseasound.confavahibash.bash_logoutbash.bashrcbind.keysbinfmt.d......$ for i in /etc/*;do echo $i;done/etc/a

2017-09-05 15:52:02 14063 1

原创 邮件发送原理

SMTP(Simple Mail Transfer Protocol)是电子邮件从客户机传输到服务器或从某一个服务器传输到另一个服务器使用的传输协议。SMTP 是请求/响应协议,命令和响应都是基于 ASCII 文本,并以 CR 和 LF 符结束。响应包括一个表示返回状态的三位数字代码。在 TCP 协议 25 端口监听连接请求。其命令如下: SMTP命令 命令说明 HELO <domain>

2017-06-08 10:30:51 1071

翻译 How to split a string in C++

这个问题是说, 怎么得到组成一句话的各个单词, 或者得到CSV中的各个数据片段. 这在C++中是个很简单的问题, 却有很多种答案.有3种方案, 每种有利有弊. 使用时请自己选择最佳方案. 这篇文章的目的是说明 迭代器的接口是如何优胜于简单的容器的, 并且阐明 design of the STL 是何等强大. 方案1使用的标准组件(虽然方案1.2 做了微调). 方案2相对好点但使用了boost. 而

2017-06-04 18:40:08 482

转载 strict weak ordering

A strict weak ordering is a binary relation < on a set S that is a strict partial order (a transitive relation that is irreflexive, or equivalently, that is asymmetric) in which the relation neither a

2017-05-27 14:42:55 313

原创 禁止root用户ssh登录机器

1 修改 /etc/ssh/sshd_config #PermitRootLogin yes 取消注释并改为 PermitRootLogin no2 重启ssh /etc/init.d/sshd restart

2017-05-23 09:29:08 494

原创 Linux 禁止普通用户su切换root

一般情况下, 普通用户执行”su -“命令, 可以登录为root. 为了加强系统的安全性, 有必要建立一个管理员的组, 只允许这个组的用户执行”su -” 命令登录为root, 而让其他组的用户即使执行”su -” 输入了正确的密码, 也无法登录为root用户. 在Unix 和Linux 下, 这个组的名称通常为”wheel”.1 添加一个用户, 把这个用户假如wheel组 2 修改/etc/p

2017-05-23 09:26:26 6184

转载 vim插件安装

转载一个vim插件安装攻略原文出处:http://littlewhite.us/archives/212C/C++是使用比例最高的程序语言,而vim是专为程序员开发的编辑器,当这两者结合起来,会给我们带来怎样的效果呢。对于windows上做C++开发的用户来说,vs为他们做了大量的工作,语法高亮、自动缩进、智能提示等等,当你happy的使用vs时,请记住一点,这是一个收费软件,虽然在我大中华普遍都

2017-05-19 10:58:11 591

翻译 Move semantics of RapidJSON

RapidJSON 设计时有一个很特别的特性, 进行赋值操作时, 不是把源value复制(copy)到目的 value, 而是转移(move)到目的value. 例如Value a(123);Value b(456);b = a; // a becomes a Null value, b becomes number 123.这样的设计的目的是 为了提高性能. 对于固定大小的JSON类型(Nu

2017-05-10 09:59:49 499

原创 passwd文件

#cat/etc/passwdroot:x:0:0:Superuser:/:daemon:x:1:1:Systemdaemons:/etc:bin:x:2:2:Ownerofsystemcommands:/bin:sys:x:3:3:Ownerofsystemfiles:/usr/sys:adm:x:4:4:Systemaccounting:/usr/adm:uucp:x:5:5:UUC

2017-04-20 18:08:24 436

转载 core文件被截断问题的解决办法

现象 通过gdb打开core,但看不到core的内容,信息如下:$ gdb XXX core.XXXGNU gdb (GDB) Red Hat Enterprise Linux ( 7.0.1-32.el5)Copyright (C) 2009 Free Software Foundation, Inc.License GPLv3+: GNU GPL version 3 or later <

2017-04-10 21:09:35 12499

转载 C/C++返回内部静态成员的陷阱

在我们用C/C++开发的过程中,总是有一个问题会给我们带来苦恼。这个问题就是函数内和函数外代码需要通过一块内存来交互(比如,函数返回字符串),这个问题困扰和很多开发人员。如果你的内存是在函数内栈上分配的,那么这个内存会随着函数的返回而被弹栈释放,所以,你一定要返回一块函数外部还有效的内存。这是一个让无数人困扰的问题。如果你一不小心,你就很有可能在这个上面犯错误。当然目前有很多解决方法,如果你熟悉一些

2017-04-02 23:43:17 392

原创 Tomcat显示更详细的log

Tomcat报的错太含糊了,什么错都没报出来,只提示了Error listenerStart。为了调试,我们要获得更详细的日志。可以在WEB-INF/classes目录下新建一个文件叫logging.properties,内容如下 handlers = org.apache.juli.FileHandler, java.util.logging.ConsoleHandler ##########

2017-03-17 17:00:58 1595

空空如也

空空如也

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

TA关注的人

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