![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
linux
IT_cica
这个作者很懒,什么都没留下…
展开
-
记录一次iTerm2闪退
记录一次ITerm2闪退现象解决过程原因猜测现象在十多天未登录iTerm之后的一天,提示更新iTerms后,使用iTerm登录,ssh的默认命令窗口闪退解决过程怀疑是否是升级版本导致的,更新了不同的iTerm版本,发现问题没有得到解决使用/bin/bash命令登入到本机,即当前的MacOs,可以登录,那猜测不是iterm的问题登录到当前的MacOs系统之后,使用ssh命令重新登录默认的登录窗口,连接远端的开发机,得到报错,ssh key校验失败找到本机MacOs的.ssh密钥中,将对应的ss原创 2020-12-28 11:15:31 · 1268 阅读 · 0 评论 -
linux下的Makefile详解(8)
隐含规则————在我们使用Makefile时,有一些我们会经常使用,而且使用频率非常高的东西,比如,我们编译C/C++的源程序为中间目标文件(Unix下是[.o]文件,Windows下是[.obj]文件)。本章讲述的就是一些在Makefile中的“隐含的”,早先约定了的,不需要我们再写出来的规则。“隐含规则”也就是一种惯例,make会按照这种“惯例”心照不喧地来运行,那怕我们的转载 2015-08-06 10:18:46 · 268 阅读 · 0 评论 -
shell的条件判断中从-a 到-z的意思
[ -a FILE ] 如果 FILE 存在则为真。[ -b FILE ] 如果 FILE 存在且是一个块特殊文件则为真。[ -c FILE ] 如果 FILE 存在且是一个字特殊文件则为真。[ -d FILE ] 如果 FILE 存在且是一个目录则为真。[ -e FILE ] 如果 FILE 存在则为真。[ -f FILE ] 如果 FILE 存在且是一个转载 2015-11-21 18:51:53 · 463 阅读 · 0 评论 -
linux下tar命令参数详解
tar命令 1. 作用 tar命令是Unix/Linux系统中备份文件的可靠方法,几乎可以工作于任何环境中,它的使用权限是所有用户。 2. 格式 tar [主选项+辅选项] 文件或目录 eg: tar zxvf libiconv-1.13.tar.gz ./libiconv tar cxvf libiconv-1.13.tar.gz ./*.php 3. 主要参数转载 2015-11-22 08:53:34 · 404 阅读 · 0 评论 -
git学习笔记
一直听说github是个神奇的版本控制软件,一直没有机会用它,最近终于有时间系统的学习一下了。git status查看被修改后的文件都有什么git diff查看被修改的文件中修改的地方git add filename:将filename文件提交到索引库中,这个索引库相当于一个缓冲区。其中可以添加多个参数,例如git add -i可以查看所有已经被修改过但是还没有被提交的文件。git add -原创 2017-01-06 21:15:42 · 550 阅读 · 0 评论 -
redis小本本(二)
本着太长的文章我自己也不爱看的原则,将《redis有感》拆分。本着事不过三的原则(又开始胡说八道了~(>_<)~),以三个为一篇文章一、redis传输协议redis的传输协议被叫做RESP(REdis Serialization Protocol) 除了两种情况之外,redis的传输协议都是请求-响应形式的,这两种例外情况是:管道传输:即上一篇文章的第三点,使用MULTI,EXEC,DISC原创 2017-06-15 20:46:04 · 283 阅读 · 0 评论 -
Gflag使用
gflag是一种用来读取命令行参数的东西,也可以从文件内读取多个命令行参数。 一、gflags的安装: 从https://github.com/gflags/gflags.git上获取gflags源码,然后依次进行输入: mkdir build //此命令的目的是创建一个文件夹,用于放置cmake出来的结果文件,防止污染gflags源码 cd build cmake ../ /原创 2017-05-08 10:25:51 · 9684 阅读 · 0 评论 -
google heap profiler内存管理工具小试
heapprofile为google出品的用来监测内存的工具,可以用来进行内存泄漏的监测 使用方法: (1)在makefile中链接libprofiler.a与libtcmalloc.a (2)在程序代码中,希望开始监测的地方使用HeapProfilerStart(char *path),参数为要输出的文件的名称前缀;在停止监测的地方使用HeapProfilerStop(),测试代码如下:#i原创 2017-08-08 17:11:06 · 4961 阅读 · 0 评论 -
C++中的时间计算
在跑程序的过程中经常需要计算某个业务运行了多久,查看是哪个部分所占的时间比较长,之前一直用gettimeofday()函数,但那个比较麻烦,还需要用结构体,然后从中取各个时间,今天突然发现boost提供了一个直接可用且更方便的库(好吧今天才知道不要嘲笑我)为了方便以后查找,先贴出boost的posix_time库的官方使用示例:http://www.boost.org/doc/libs/maste原创 2017-09-03 18:11:23 · 1050 阅读 · 0 评论 -
C++重载new函数
(1)在某些时候需要重载new函数,如果直接在类中重载,则会将系统原有的new函数覆盖掉,调用系统原有的new会出错。 (2)所以办法就是定义一个基类,将系统的new,delete函数放在基类中,然后定义一个派生类,将新定义的new和delete放在派生类中,并同时使用基类中原有的new,delete。 (3)同时,在定义新的new的时候,一定要同时定义对应的新的delete,因为如果new出错原创 2017-09-04 10:50:30 · 1429 阅读 · 0 评论 -
linux下的Makefile详解(5)
使用条件判断——————使用条件判断,可以让make根据运行时的不同情况选择不同的执行分支。条件表达式可以是比较变量的值,或是比较变量和常量的值。一、示例下面的例子,判断$(CC)变量是否“gcc”,如果是的话,则使用GNU函数编译目标。libs_for_gcc = -lgnunormal_libs =foo: $(objects)ifeq ($转载 2015-08-06 10:16:15 · 336 阅读 · 0 评论 -
linux下的Makefile详解(4)
使用变量————在Makefile中的定义的变量,就像是C/C++语言中的宏一样,他代表了一个文本字串,在Makefile中执行的时候其会自动原模原样地展开在所使用的地方。其与C/C++所不同的是,你可以在Makefile中改变其值。在Makefile中,变量可以使用在“目标”,“依赖目标”,“命令”或是Makefile的其它部分中。变量的命名字可以包含字符、数字,下划线(可以转载 2015-08-06 10:14:07 · 329 阅读 · 0 评论 -
linux echo命令的-n、-e两个参数
echo -n 不换行输出$echo -n "123"$echo "456"最终输出 123456而不是123456echo -e处理特殊字符若字符串中出现以下字符,则特别加以处理,而不会将它当成一般文字输出:\a 发出警告声;\b 删除前一个字符;\c 最后不加上换行符号;\f 换行但光标仍旧停留在原来的转载 2015-08-04 19:18:25 · 650 阅读 · 0 评论 -
linux下的Makefile详解(1)
跟我一起写 Makefile陈皓 (CSDN)概述——什么是makefile?或许很多Winodws的程序员都不知道这个东西,因为那些Windows的IDE都为你做了这个工作,但我觉得要作一个好的和professional的程序员,makefile还是要懂。这就好像现在有这么多的HTML的编辑器,但如果你想成为一个专业人士,你还是要了解HTML的标识的含义。特别在U转载 2015-08-06 09:25:44 · 316 阅读 · 0 评论 -
linux下的Makefile详解(7)
make 的运行——————一般来说,最简单的就是直接在命令行下输入make命令,make命令会找当前目录的makefile来执行,一切都是自动的。但也有时你也许只想让make重编译某些文件,而不是整个工程,而又有的时候你有几套编译规则,你想在不同的时候使用不同的编译规则,等等。本章节就是讲述如何使用make命令的。一、make的退出码make命令执行后有三个退出码:转载 2015-08-06 10:17:50 · 282 阅读 · 0 评论 -
linux下的Makefile详解(9)完!
使用make更新函数库文件———————————函数库文件也就是对Object文件(程序编译的中间文件)的打包文件。在Unix下,一般是由命令"ar"来完成打包工作。一、函数库文件的成员一个函数库文件由多个文件组成。你可以以如下格式指定函数库文件及其组成:archive(member)这个不是一个命令,而一个目标和依赖的定义。一般来说,这种用法基本上就是转载 2015-08-06 10:19:46 · 360 阅读 · 0 评论 -
linux挂载光盘,U盘
1)挂载光盘建立挂载点: mount /mnt/cdrom/(此目录为自己设定,任何一个空目录都可以挂载)挂载: mount -t iso9660 /dev/sr0/ /mnt/cdrom或者mount /dev/sr0/ /mnt/cdrom(会自动选择iso9660)卸载: umount /dev/sr0或者umount /mnt/cdrom原创 2015-08-06 08:30:39 · 433 阅读 · 0 评论 -
linux下的Makefile详解(3)
书写命令————每条规则中的命令和操作系统Shell的命令行是一致的。make会一按顺序一条一条的执行命令,每条命令的开头必须以[Tab]键开头,除非,命令是紧跟在依赖规则后面的分号后的。在命令行之间中的空格或是空行会被忽略,但是如果该空格或空行是以Tab键开头的,那么make会认为其是一个空命令。我们在UNIX下可能会使用不同的Shell,但是make的命令默认是被“/bin转载 2015-08-06 10:13:05 · 336 阅读 · 0 评论 -
linux下的Makefile详解(6)
使用函数————在Makefile中可以使用函数来处理变量,从而让我们的命令或是规则更为的灵活和具有智能。make所支持的函数也不算很多,不过已经足够我们的操作了。函数调用后,函数的返回值可以当做变量来使用。一、函数的调用语法函数调用,很像变量的使用,也是以“$”来标识的,其语法如下:$( )或是${ }这里,就是函数名,make支转载 2015-08-06 10:17:08 · 363 阅读 · 0 评论 -
linux下的Makefile详解(2)
书写规则————规则包含两个部分,一个是依赖关系,一个是生成目标的方法。在Makefile中,规则的顺序是很重要的,因为,Makefile中只应该有一个最终目标,其它的目标都是被这个目标所连带出来的,所以一定要让make知道你的最终目标是什么。一般来说,定义在Makefile中的目标可能会有很多,但是第一条规则中的目标将被确立为最终的目标。如果第一条规则中的目标有很多个,那么,转载 2015-08-06 09:30:04 · 370 阅读 · 0 评论 -
linux下man时括号里的数字意义
manfclose时,会显示fclose(3),这个3的意义是什么呢,它不是指有几个参数,而是表示fclose所在章节,3就是库调用。具体如下:1 - commands2 - system calls3 - library calls4 - special files5 - file formats and convertions6 - games for linux7转载 2015-08-08 16:05:51 · 825 阅读 · 0 评论