随笔分类 - linux
linux
摘要:sort的-u选项它的作用很简单,就是在输出行中去除重复行。sort的-r选项sort默认的排序方式是升序,如果想改成降序,就加个-r就搞定了。sort的-o选项由于sort默认是把结果输出到标准输出,所以需要用重定向才能将结果写入文件,形如sortsort的-n选项你有没有遇到过10比2小的情况。...
        阅读全文
                
摘要:系统# uname -a # 查看内核/操作系统/CPU信息# head -n 1 /etc/issue # 查看操作系统版本# cat /proc/cpuinfo # 查看CPU信息# hostname # 查看计算机名# ls...
        阅读全文
                
摘要:upload_files=`find ${SOSO_BAIKE_LOCAL_UPLOAD_DIR} -type f -name '*.xml' -mmin +60`压缩命令:tar -czvPf result.tar.gz ${upload_files}解压命令:tar -xzvPf result....
        阅读全文
                
摘要:因为操作系统的很多操作会消耗系统的物理资源,例如创建一个新进程时,要做很多底层的细致工作,如分配物理内存,从父进程拷贝相关信息,拷贝设置页目录、页表等,这些操作显然不能随便让任何程序都可以做,于是就产生了特权级别的概念,与系统相关的一些特别关键性的操作必须由高级别的程序来完成,这样可以做到集中管理,...
        阅读全文
                
摘要:转载:http://my.oschina.net/bluesky0leon/blog/132361从编程语言层面BIO | NIO | AIO 以Java的角度,理解,linux c里也有AIO的概念(库),这些概念不知道什么原因被炒火起来,这里只从Java角度入手。 BIO,同步阻塞式IO,简单...
        阅读全文
                
摘要:df命令用来查看系统的space和inode使用情况,也是常用命令之一-a 显示所有的文件系统,包括本地的和挂载的网络文件系统-h 显示大小的时候,以人性化的方式来显示,以更适合的方式来显示-T 现实文件系统类型-t 显示指定的文件系统-l 只显示本地文件系统-k 以KB为单位显示-x 不显示指定的文件系统-i 显示inode使用情况
        阅读全文
                
摘要:进程和线程都是由操作系统所体会的程序运行的基本单元,系统利用该基本单元实现系统对应用的并发性。进程和线程的区别在于:简而言之,一个程序至少有一个进程,一个进程至少有一个线程.线程的划分尺度小于进程,使得多线程程序的并发性高。另外,进程在执行过程中拥有独立的内存单元,而多个线程共享内存,从而极大地提高了程序的运行效率。线程在执行过程中与进程还是有区别的。每个独立的线程有一个程序运行的入口、顺序执行序列和程序的出口。但是线程不能够独立执行,必须依存在应用程序中,由应用程序提供多个线程执行控制。从逻辑角度来看,多线程的意义在于一个应用程序中,有多个执行部分可以同时执行。但操作系统并没有将多个线程看做
        阅读全文
                
摘要:内存泄漏也称作“存储渗漏”,用动态存储分配函数动态开辟的空间,在使用完毕后未释放,结果导致一直占据该内存单元。直到程序结束。(其实说白了就是该内存空间使用完毕之后未回收)即所谓内存泄漏。内存泄漏形象的比喻是“操作系统可提供给所有进程的存储空间正在被某个进程榨干”,最终结果是程序运行时间越长,占用存储空间越来越多,最终用尽全部存储空间,整个系统崩溃。所以“内存泄漏”是从操作系统的角度来看的。这里的存储空间并不是指物理内存,而是指虚拟内存大小,这个虚拟内存大小取决于磁盘交换区的设定的大小由程序申请的一块内存,且没有任何一个指针指向它,那么这块内存就泄露了。以发生的方式来分类,内存泄漏可以分为4类:
        阅读全文
                
摘要:缓存淘汰算法系列之1——LRU类1.LRU1.1.原理LRU(Leastrecentlyused,最近最少使用)算法根据数据的历史访问记录来进行淘汰数据,其核心思想是“如果数据最近被访问过,那么将来被访问的几率也更高”。1.2.实现最常见的实现是使用一个链表保存缓存数据,详细算法实现如下:1.新数据插入到链表头部;2.每当缓存命中(即缓存数据被访问),则将数据移到链表头部;3.当链表满的时候,将链表尾部的数据丢弃。Cache替换算法是影响代理缓存系统性能的一个重要因素,一个好的Cache替换算法可以产生较高的命中率。目前已经提出的算法可以划分为以下三类:(1)传统替换算法及其直接演化,其代表算
        阅读全文
                
摘要:一. 移动: h,j,k,l: 左,下,上,右。 w: 下一个词的词首。 e:下一个词的词尾。 b:上一个词的词首。 : v 模式选中后进行缩进。二. 跳转: %: 可以匹配{},"",(),[]之间跳转。 H、M、L:直接跳转到当前屏幕的顶部、中部、底部。 #H:跳转到当前屏的第#行。 #L:跳转到当前屏的倒数第#行。 zt: 当前编辑行置为屏顶。 zz: 当前编辑行置为屏中。 zb: 当前编辑行置为屏底。 G:直接跳转到文件的底部。 gg: 跳转到文件首。 ():跳转到当前的行首、行尾。 {}:向上、向下跳转到最近的空行。 [{:跳转到目前区块开头。 ]}:跳转到目前区
        阅读全文
                
摘要:位置参数可以用shift命令左移。比如shift 3表示原来的$4现在变成$1,原来的$5现在变成$2等等,原来的$1、$2、$3丢弃,$0不移动。不带参数的shift命令相当于shift 1。非常有用的 Unix 命令:shift。我们知道,对于位置变量或命令行参数,其个数必须是确定的,或者当 Shell 程序不知道其个数时,可以把所有参数一起赋值给变量$*。若用户要求 Shell 在不知道位置变量个数的情况下,还能逐个的把参数一一处理,也就是在 $1 后为 $2,在 $2 后面为 $3 等。在 shift 命令执行前变量 $1 的值在 shift 命令执行后就不可用了。示例如下:#测试 s
        阅读全文
                
摘要:深入浅出Shell编程: Shell 变量1 系统变量2 Shell用户变量2.1 基础2.2 使用技巧 2.3 shell 中的数组3 shell 环境变量先不要管Shell的版本,来看看Shell 变量,在Shell中有三种变量:系统变量,环境变量,用户变量。其中用户变量在编程过程中使用最多,系统变量在对参数判断和命令返回值判断会使用,环境变量主要是在程序运行的时候需要设置。1 系统变量Shell常用的系统变量并不多,但却十分有用,特别是在做一些参数检测的时候。下面是Shell常用的系统变量表示方法描述$n$1 表示第一个参数,$2 表示第二个参数 ...$#命令行参数的个数$0当前程序.
        阅读全文
                
摘要:.tar解包:tar xvf FileName.tar打包:tar cvf FileName.tar DirName(注:tar是打包,不是压缩!)---------------------------------------------.gz解压1:gunzip FileName.gz解压2:gzip -d FileName.gz压缩:gzip FileName.tar.gz 和 .tgz解压:tar zxvf FileName.tar.gz压缩:tar zcvf FileName.tar.gz DirName-----------------------------------------
        阅读全文
                
                    
                
浙公网安备 33010602011771号