linux
文章平均质量分 53
waponx
不登高山,不知天之高也;不临深溪,不知地之厚也。
展开
-
Vim7.4的命令之多标签编辑
1.以多标签的格式打开多个文件就像这样:在启动VIm的时候加上命令 vim -p file1name file2name。。。如果想只编辑其中一个窗口的话,在想要编辑的窗口之下进入命令行模式输入:only就行了:tabedit filename 以标签的形式打开文档:wall 保存所有文件:qall 退出所有文件的编辑:close原创 2015-01-29 12:07:02 · 542 阅读 · 0 评论 -
【转】linux系统备份
在使用Ubuntu之前,相信很多人都有过使用Windows系统的经历。如果你备份过Windows系统,那么你一定记忆犹新:首先需要找到一个备份工具(通常都是私有软件),然后重启电脑进入备份工具提供的软件环境,在这里备份或者恢复Windows系统。Norton Ghost是备份Windows系统时经常使用的备份工具。 在备份Windows系统的时候你可能想过,我能不能把整个C盘都放到转载 2015-10-15 22:22:07 · 502 阅读 · 0 评论 -
vim的四种模式
正常模式(normal-mode) 命令模式(command-mode)插入模式(insert-mode)可视模式(visual-mode) 正常模式:进入:其他模式都可以直接转换到正常模式,按Esc即可。如果一次不行就多按几次。主要用来浏览和操作文件,可以使用相关的快捷键,例如:gg:跳到文件首shitf + g:跳到行文件尾yy: 复制光原创 2015-11-03 14:51:22 · 2703 阅读 · 0 评论 -
XSHELL下直接下载文件到本地(Windows)
xshell很好用,然后有时候想在windows和linux上传或下载某个文件,其实有个很简单的方法就是rz,sz首先你的Ubuntu需要安装rz.sz(如果没有安装请执行以下命令,安装完的请跳过.其它版本linux请自行安装相应软件)yum install lrzsz安装完毕即可使用rz,sz是便是Linux/Unix同Windows进行转载 2015-12-29 21:27:30 · 10336 阅读 · 0 评论 -
Ubuntu下修改镜像源
在使用终端登陆的时候,我们没有办法使用图形化界面修改镜像源。这个时候我们只能通过命令了来修改了。找到文件:/etc/apt/source.list如果怕出错可以备份一下,用cp,命令就行啦。cp /etc/apt/source.list /etc/apt/source.list.back清空整个source.list文件,然后复制下列内容到文件中:d原创 2015-11-03 16:19:58 · 6083 阅读 · 0 评论 -
gdb 多线程调试
gdb 多线程调试转载自:http://www.cnblogs.com/xuxm2007/archive/2011/04/01/2002162.htmlhttp://hi.baidu.com/hcq11/blog/item/9f5bfc6e696209d680cb4a25.html http://hi.baidu.com/litto/blog/item/759389转载 2016-03-17 15:14:27 · 506 阅读 · 0 评论 -
TCPdump抓包命令详解
http://starsliao.blog.163.com/blog/static/89048201062333032563/TCPdump抓包命令 tcpdump是一个用于截取网络分组,并输出分组内容的工具。tcpdump凭借强大的功能和灵活的截取策略,使其成为类UNIX系统下用于网络分析和问题排查的首选工具。 tcpdump提供了源代码,公开了接口,因此具备很强的可转载 2016-03-06 12:14:11 · 777 阅读 · 0 评论 -
linux awk 命令详解
转载自:http://www.cnblogs.com/ggjucheng/archive/2013/01/13/2858470.html简介awk是一个强大的文本分析工具,相对于grep的查找,sed的编辑,awk在其对数据分析并生成报告时,显得尤为强大。简单来说awk就是把文件逐行的读入,以空格为默认分隔符将每行切片,切开的部分再进行各种分析处理。awk有3个不同版本:转载 2016-03-30 13:14:38 · 561 阅读 · 0 评论 -
linux用户态和内核态理解
转载自:http://blog.csdn.net/buptapple/article/details/214541671、特权级 Intel x86架构的cpu一共有0~4四个特权级,0级最高,3级最低,硬件上在执行每条指令时都会对指令所具有的特权级做相应的检查。硬件已经提供了一套特权级使用的相关机制,软件自然要好好利用,这属于操作系统要做的事情,对于UNIX转载 2016-02-21 11:13:36 · 439 阅读 · 0 评论 -
gcc 编译顺序的问题
1.gcc和g++的关系 在编译的时候g++调用的是gcc,但是在连接的时候因为C语言和C++的链接库是不一样的,所以应该使用g++来连接C++代码。在linux,以.c结尾的文件(linux和win不一样,没有所谓的后缀),会被认为是C文件。以.cpp或者.cc(推荐用这个)结尾的文件会被认为是C++的文件。对于编译顺序,gcc和g++是差不多的,在这里就值讨论gcc了。更详细的信原创 2016-02-23 18:55:31 · 5847 阅读 · 0 评论 -
理解互斥量和信号量
转载自:http://blog.csdn.net/rommi/article/details/6015143互斥量(Mutex) 互斥量表现互斥现象的数据结构,也被当作二元信号灯。一个互斥基本上是一个多任务敏感的二元信号,它能用作同步多任务的行为,它常用作保护从中断来的临界段代码并且在共享同步使用的资源。 Mutex本质上说就是一把锁,提供对资源的独转载 2016-03-10 19:26:26 · 3092 阅读 · 0 评论 -
Linux系统编程——I/O多路复用select、poll、epoll的区别使用
转载自:http://blog.csdn.net/tennysonsky/article/details/45745887I/O 多路复用技术是为了解决进程或线程阻塞到某个 I/O 系统调用而出现的技术,使进程不阻塞于某个特定的 I/O 系统调用。select(),poll(),epoll()都是I/O多路复用的机制。I/O多路复用通过一种机制,可以监视多个描述符,一旦转载 2016-04-12 21:09:58 · 1164 阅读 · 0 评论 -
线程同步
几个定义: 1.什么是临界资源? 在多线程环境下,需要共享的资源,比如打印机这类资源,就是临界资源。 2.什么是临界区? 在多线程的环境下,有时候我们会访问一些全局资源(简单的来说就是要和其他线程共享的资源),比如数据库连接。一个进程只有一个数据库连接,在这种情况下这个数据库连接就是共享的资源,也就是临界资源。而访问临界资源的代码就是临界区。原创 2016-04-11 15:27:26 · 423 阅读 · 0 评论 -
自动配置vim
在我的github上有一个基本的Vim的配置文件:https://github.com/WaPonX/MyVim 想要学习vim和使用vim的同学可以上去下载。 安装也是很简单的: 首先需要获取一份克隆,如果安装了git的可以用下面命令:git clone https://github.com/WaPonX/MyVim.git然后,执行命令:./install/sh就可以了。因为我用YCM原创 2016-09-23 12:10:35 · 584 阅读 · 0 评论 -
使用gawk记录一段时间内,某个进程占用内存和CPU的情况
很多时候,我们在后台测试程序的时候,都需要隔一段时间监控程序的内存和CPU占用情况,但是又不能经常盯着top命令的输出。 这时候就需要使用脚本来帮我们记录这些信息,方便我们监控了。废话不多说,直接上代码:#!/bin/bashFileName="res.txt"echo "%CPU\t%MEM" > $FileNamefor (( i = 0; i < 10; i++ )) do ou原创 2016-09-27 16:13:28 · 7474 阅读 · 0 评论 -
Bash Shell 的 嵌套的While带来的问题
今天遇到了一个问题,当使用了嵌套的while之后,发现变量的值不会变更,例如下列代码while 1; do a = 1 cat file | while line || [ -n "${line}" ]; do a = 3 done echo "${a}"done这段代码输出的a一直都是2,而不是3。就是说内层的while中对a的修改并没有作用原创 2017-08-25 13:17:37 · 3344 阅读 · 0 评论 -
glibc中的文件指针漏洞分析
glib版本2.17在上一篇文章(源码解析glibc中的pclose与fclose函数)中,初步了解到了glibc中的文件指针。现在我们再来深入分析一下glibc文件指针,并解析一下其漏洞所在。注意:这个漏洞在glibc2.24中通过加入虚表地址检查修复glibc中的文件结构先了解一下普通文件的方式(注意3个标准文件描述符的链接顺序)!文件链接示意图](https://img-bl...原创 2019-01-31 20:39:21 · 8315 阅读 · 1 评论 -
[转]Vi/Vim查找替换使用方法
vi/vim 中可以使用 :s 命令来替换字符串。该命令有很多种不同细节使用方法,可以实现复杂的功能,记录几种在此,方便以后查询。 :s/vivian/sky/ 替换当前行第一个 vivian 为 sky :s/vivian/sky/g 替换当前行所有 vivian 为 sky :n,$s/vivian/sky/ 替换第 n 行开始到最后一行中每一行转载 2015-11-09 22:01:19 · 541 阅读 · 0 评论 -
Linux终端常用快捷键
ctrl + c 强制终止当前命令ctrl + l 清屏ctrl + a 移动光标到命令行首ctrl + e 移动光标到命令行尾ctrl + u 从光标所在位置删除到行首ctrl + z 把命令放入到原创 2015-09-17 21:53:49 · 536 阅读 · 0 评论 -
【转】每天一个linux命令(61):wget命令
原文链接:http://www.cnblogs.com/peida/archive/2013/03/18/2965369.htmlLinux系统中的wget是一个下载文件的工具,它用在命令行下。对于Linux用户是必不可少的工具,我们经常要下载一些软件或从远程服务器恢复备份到本地服务器。wget支持HTTP,HTTPS和FTP协议,可以使用HTTP代理。所谓的自动下载是指,wget可以在用户退转载 2015-10-04 15:27:07 · 541 阅读 · 0 评论 -
Linux下C/C++编译器GCC/G++使用简介
转载自:http://www.ha97.com/2830.html一、GCC简介通 常所说的GCC是GNU Compiler Collection的简称,除了编译程序之外,它还含其他相关工具,所以它能把易于人类使用的高级语言编写的源代码构建成计算机能够直接执行的二进制代 码。GCC是Linux平台下最常用的编译程序,它是Linux平台编译器的事实标准。同时,在Linux平台转载 2015-02-05 17:32:05 · 1000 阅读 · 0 评论 -
linux下vim中文乱码的解决方法
下面内容转自:http://www.cnblogs.com/joeyupdo/archive/2013/03/03/2941737.html顺便记录一下Vim编码的详细介绍 Vim和所有的流行文本编辑器一样,Vim 可以很好的编辑各种字符编码的文件,这当然包括 UCS-2、UTF-8 等流行的 Unicode 编码方式。 Vim 有四个跟字符编码方式有关的选项,enco转载 2015-02-07 08:57:15 · 1738 阅读 · 0 评论 -
vim环境配置之airline乱码问题
下载:直接运行下面的命令就行了git clone https://github.com/bling/vim-airline ~/.vim/bundle/vim-airline字体下载:https://github.com/powerline/fonts可以用命令:git clone https://github.com/powerline/fonts ~/.vim/原创 2015-02-07 23:41:38 · 9701 阅读 · 0 评论 -
vim环境配置之Syntastic
简介:Syntastic插件是一个支持语法检测和编码风格检测的插件。下载与安装:方法一:可以从网站https://github.com/scrooloose/syntastic下载方法2:通过vundle管理(推荐用这个方法)filetype off" Vundle Config Managerset rtp+=~/.vim/bundle/Vundle.v原创 2015-02-07 22:17:20 · 6913 阅读 · 0 评论 -
vim环境配置之智能补全工具YouCompleteMe(YCM)的安装和配置
介绍:YoucomplemeMe是一个很强大的智能补全工具,对C++的支持特别好安装YouComplemeMe:这里只介绍一种安装方法,用vundle安装在成功安装vundle之后,我们可以通过在~/.vimrc里加入下面代码:filetype offset rtp+=~/.vim/bundle/vundlecall vundel#rc()Bundle原创 2015-02-06 21:42:31 · 5783 阅读 · 0 评论 -
vim环境配置之YoucomplemeMe使用出错
在安装完YCM之后,重新打开vim还会出现如下的报错信息:ycm_client_support.[so|pyd|dll] and ycm_core.[so|pyd|dll] not detected; you need to compile YCM before using it. Read the docs!这个就可以通过在~/.vim/bundle/YouCompleteMe,即你的Y原创 2015-02-06 22:02:02 · 5650 阅读 · 0 评论 -
vim配置之map等命令
我们在vimrc中可能想要绑定某些快捷键方便我们操作,这时候我们就要用到mao命令去绑定快捷键了。关于map等的介绍,转载自下面网址的文章:http://www.douban.com/group/topic/10866937/有五种映射存在- 用于普通模式: 输入命令时。- 用于可视模式: 可视区域高亮并输入命令时。- 用于操作符等待模式: 操作符等待中 ("d",转载 2015-02-08 23:10:46 · 1732 阅读 · 0 评论 -
ubuntu下软件更新的出错
在打开ubuntu的刘案件更新器更新的时,有时会出现一堆错误,比如:W: 无法下载 http://cn.archive.ubuntu.com/ubuntu/dists/maverick/main/source/Sources.gz 500 Internal Server ErrorW: 无法下载 http://cn.archive.ubuntu.com/ubuntu/dists/mav原创 2015-03-26 15:09:21 · 5871 阅读 · 0 评论 -
UBUNTU下安装搜狗拼音
先安装fcitx:使用命令:sudo apt-get install fcitx然后从搜狗的官网下载deb包:http://pinyin.sogou.com/linux/?r=pinyin这里也有个fcitx的更新教程:http://pinyin.sogou.com/linux/help.php下载下来之后,就可以安装啦:sudo dpkg -i *sogou*.deb原创 2015-03-18 08:50:42 · 707 阅读 · 0 评论 -
Ubuntu下怎么安装Flash插件
最近又重新安装了一个Ubuntu系统,发现里面的firefox没有安装Flash插件,尝试过很多方法都不行。在厕所哭了很久。今晚终于搞定了!MD!先从官网下载一份tar.gz格式的安装包:http://get.adobe.com/cn/flashplayer/?promoid=JZEFT,然后用命令:原创 2015-03-17 21:34:17 · 922 阅读 · 0 评论 -
ubuntu下修改mysql密码
安装mysql:sudo apt-get install mysql-server-5.6系统将自动安装mysql,在安装过程中,它会提示你输入密码。输入你想要设置的密码就行啦。不过,要注意的是,这个密码是root的密码/。如果以后想改root密码怎么办?在网上找了很多办法,试了都不行。在偶然间发现了一个命令:mysqladmin你只要运行:sudo mysqlad原创 2015-04-03 10:56:06 · 5885 阅读 · 0 评论 -
vim 复制
用vim这么久 了,始终也不知道怎么在vim中使用系统粘贴板,通常要在网上复制一段代码都是先gedit打开文件,中键粘贴后关闭,然后再用vim打开编辑,真的不 爽;上次论坛上有人问到了怎么在vim中使用系统粘贴板,印象里回复很多,有好几页的回复却没有解决问题,今天实在受不了了又在网上找办法,竟意外地找到 了,贴出来分享一下。如果只是想使用系统粘贴板的话直接在输入模式按Shift+Ins转载 2015-07-12 18:26:06 · 468 阅读 · 0 评论 -
vi/vim使用进阶: 程序员的利器 – cscope
原文链接:http://easwy.com/blog/archives/advanced-vim-skills-cscope/本节所用命令的帮助入口::help cscope 在前面的文章中介绍了利用tag文件,跳转到标签定义的地方。但如果想查找函数在哪里被调用,或者标签在哪些地方出现过,ctags就无能为力了,这时需要使用更为强大的cscope。Cscope具有纯正的转载 2015-08-24 20:24:08 · 556 阅读 · 0 评论 -
Ubuntu下如何编译C++11的代码
首先要下载支持C++11标准的gcc/g++编译器,我的是4.8的,支持C++11标准。想要下载和安装最新的只需要用一下命令即可:sudo apt-get install gcc g++然后在编译的时候加上编译指令-std=c++11:g++ -std=c++11 -c main.ccg++ -std=c++11 -o main main.o就可以编译出支持C++11原创 2015-07-31 11:47:13 · 4825 阅读 · 0 评论 -
Linux下Gcc生成和使用静态库和动态库详解
转载自:http://blog.chinaunix.net/uid-23592843-id-223539.html 如果侵犯了作者权益,请联系我~谢谢大神~受益良多~一、基本概念1.1什么是库在windows平台和linux平台下都大量存在着库。本质上来说库是一种可执行代码的二进制形式,可以被操作系统载入内存执行。由于windows和linux的平台不同(主要是编译器、转载 2015-07-20 19:59:47 · 867 阅读 · 0 评论 -
linux下使用GDB调试C/C++总结(图文教程)
一般来说,GDB主要帮助你完成下面三个方面的功能:1、启动你的程序,可以按照你的自定义的要求随心所欲的运行程序。2、可让被调试的程序在你所指定的调置的断点处停住。(断点可以是条件表达式)3、当程序被停住时,可以检查此时你的程序中所发生的事。gdb调试命令表:命令解释简写file加载一个可执行文件,也可以在运行gdb的时原创 2015-08-05 10:42:04 · 2561 阅读 · 0 评论 -
GCC编译参数
文章摘自:http://blog.chinaunix.net/uid-13539494-id-1991081.htmlhttp://www.2cto.com/os/201207/139288.html相关的博文:http://blog.csdn.net/sky453589103/article/details/469730431简介GCC 的意思也只转载 2015-09-15 17:13:58 · 2042 阅读 · 0 评论 -
源码解析glibc中的pclose与fclose函数
文章目录pclose 和 fclose 的阻塞问题测试代码问题pclose与fclose的关系fclose函数的定义pclose函数的定义总结fclose中的block有嫌疑的地方初识文件指针popen与fopen的魔术fopen的实现popen的实现总结glibc源码版本:2.17pclose 和 fclose 的阻塞问题测试代码int main(){ for(unsign...原创 2019-01-22 23:10:05 · 2764 阅读 · 0 评论