Chinaunix首页 | 论坛 | 博客
  • 博客访问: 242315
  • 博文数量: 46
  • 博客积分: 847
  • 博客等级: 准尉
  • 技术积分: 435
  • 用 户 组: 普通用户
  • 注册时间: 2011-06-17 18:05
个人简介

Linux运维经验

文章分类

全部博文(46)

文章存档

2021年(2)

2014年(2)

2013年(5)

2012年(19)

2011年(18)

我的朋友

分类: LINUX

2013-06-18 23:17:40

原文地址:Linux命令集锦--持续更新 作者:scq2099yt

1、pstree
        按照树状结构列出进程。

2、split
        将一个大文件分割成几个小的部分,比如:
        #split -b 2m largefile LF_
        会将largefile分割成带有LF文件名前缀且大小为2MB的小文件

3、nl
        显示行号。在阅读脚本或代码时非常方便,比如:
        nl wireless.h | head

4、ldd
        输出指定文件依赖的动态链接库,比如:
        #ldd /usr/java/jre1.5.0_11/bin/java
        上面命令能够列出java动态链接了哪些库。

5、col
        可以讲man手册页保存为无格式的文本文件,比如:
        PAGER = cat man less | col -b > less.txt

6、lsof
        列出打开的文件,比如:
        #lsof | grep TCP
        上面命令可以找到打开的端口。
        用lsof检查进程被删除但空间还占用:
        #lsof |grep delete

7、sudo !!
        以root帐户执行上一条命令。

8、python -m SimpleHTTPServer
        利用Python搭建一个简单的Web服务器,可通过访问。

9、:w !sudo tee %
        在vim中无需权限保存编辑的文件。

10、!whatever :p
        搜素命令历史,但不执行。

11、ffmpeg -f x11grab -s wxga -r 25 -i :0.0 -sameq /tmp/out.mpg
        把Linux桌面录制为视频。

12、查看CPU信息
        #cat /proc/cpuinfo |grep name | cut -f2 -d: | uniq -c
                2  Intel(R) Xeon(R) CPU           E5645  @ 2.40GHz
        看到有2个逻辑CPU及CPU型号。
       
13、查看系统信息
        #cat /etc/issue
                CentOS release 5.6 (Final)
        查看操作系统是32位还是64位的方法如下:
        #echo $HOSTTYPE        //i386 or x86_64
        #file /sbin/init                //ELF 32-bit or 64-bit
        #uname -a                    //i386 or x86_64
        #getconf LONG_BIT      //32 or 64   
        

14、统计文件中的行数、字数、字节数或字符数
        #netstat -nap|grep 8002 | wc -lwm
              2      14     218

15、查看当前进程打开了多少句柄数
        #lsof -n|awk '{print $2}'|sort|uniq -c|sort -nr|more
             57 26778
             44 22376
         其中,第一列是打开的句柄数,第二列是进程ID。

16、查看磁盘空间大小
        #df -h
        Filesystem            Size  Used Avail Use% Mounted on
        /dev/hda2              20G   20G   49M 100% /
        /dev/hda4              76G  6.0G   66G   9% /home
        /dev/hda1              99M   15M   80M  16% /boot
        tmpfs                1005M     0 1005M   0% /dev/shm
        显示磁盘空间大小,每列分别表示文件系统、容量、已用、可用、已用百分比、挂载点。
        #df -sh
        查看当前文件夹总共多大,h用于显示合适的单位。
        #df -sh /root
        显示指定路径文件夹总共多大。
        #du --max-depth=1 -h
        显示当前文件夹下,每个文件或文件夹大小。
        #du --max-depth=0 -h
        等同于du -sh,即显示当前文件夹总大小。

17、环境变量
        查看环境变量:
        #echo $PATH
        添加环境变量
        #vi /etc/profile
        在文档最后添加:
        export PATH="/xxx/xxx:$PATH"
        保存后执行下面命令即可大功告成:
        #source /etc/profile

18、查看进程启动时间
        #ps -p PID -o lstart

19、判断CPU是32位还是64位
        #grep flags /proc/cpuinfo
        flags           : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe nx rdtscp lm constant_tsc arch_perfmon pebs bts xtopology nonstop_tsc aperfmperf pni dtes64 monitor ds_cpl vmx est tm2 ssse3 cx16 xtpr pdcm dca sse4_1 sse4_2 popcnt lahf_lm dts tpr_shadow vnmi flexpriority ept vpid
        如果能找到lm,则说明是64位CPU,具体如下:
        Long Mode:           64位CPU            
        Real Mode:            16位CPU
        Protected Mode:    32位CPU

20、判断系统是32位还是64位
        #uname -a
        Linux vpoker 2.6.32-279.el6.i686 #1 SMP Fri Jun 22 10:59:55 UTC 2012 i686 i686 i386 GNU/Linux
        Linux ZS-QA-02 2.6.32-279.el6.x86_64 #1 SMP Fri Jun 22 12:19:21 UTC 2012 x86_64 x86_64 x86_64 GNU/Linux
        如果有x86_64则说明是64位系统,如果有i686 i386则说明是32位系统。
        也可以如下来判断:
        #getconf LONG_BIT
        如果输出64则说明是64位系统,如果输出32则说明是32位系统。

21、重命名文件和文件夹
        mv命令既可以重命名文件或文件夹,又可以移动文件或文件夹。
        将目录a重命名为b:
        #mv a b
        将/a目录移动到/b下,并重命名为c:
        #mv /a /b/c
        需要注意的是如果/b目录下存在c,则旧文件c会被新文件c覆盖掉。

22、查看进程和子进程数
        (1)查看进程名为process_name的所有进程ID,包括父进程和子进程
        ps -ef | grep process_name | grep -v "grep" | awk '{print $2}'
        (2)查看进程的子进程数,不包括父进程
        pstree -p PID
        pstree -p PID |wc -l
        (3)查看进程的所有线程
        ps mp PID -o THREAD,tid        

33、根据名称kill所有进程
        #killall -9 processname
        对于一个多进程的程序,手动一个个干掉是件悲剧的事,killall就是用来解决这个问题的。



。。。未完待续。。。


阅读(1440) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~