Linux命令集

来源:互联网 发布:随机生成域名检测 编辑:程序博客网 时间:2024/06/05 21:18
文件目录类命令

①pwd命令:用于显示用户当前所在的目录;

②cd命令:用来在不同的目录中进行切换; .代表当前目录 ..代表当前目录的父目录 ~代表用户的个人家目录;

③ls命令:查看文件 -a查看隐藏文件 -l查看权限等;

④cat命令:用于滚屏显示文件内容或是将多个文件合并成一个文件; 滚屏显示文件的语法为cat [参数] 文件名 合并文件的语法为cat file1 file2 >file3 或者cat file1 file2> 
cat -b:对输出内容重的非空行标注行号 cat -n:对输出内容中的所有行标注行号

⑤more命令:浏览文件类命令;使用cat命令时,如果文件太长,用户只能看到文件的最后一部分,这时可以使用more命令,一页一页的分屏显示文件的内容; 按Enter键可以向下移动一行,按space键可以向下移动一页;按q键可以退出more命令; 语法:more [参数] 文件名
more -num:这里的num是一个数字,用来指定分页显示时每页的行数;
more +num:指定从文件的第num行开始显示;

⑥less命令:more命令的改进版,more命令只能向下翻页,less命令可以向上、向下翻页,甚至可以前后左右的移动; 按Enter键可以向下移动一行,按space键可以向下移动一页;按b键可以向上移动一页;用光标键向前、后、左、右移动;按q键可以退出less命令。
less命令还支持在一个文本文件中进行快速查找;先按下斜杠键/,再输入要查找的单词或字符,less命令会在文本文件中进行快速查找,并把找到的第一个搜素目标高亮度显示,如果希望继续查找,就再次按下斜杠键,再按Enter键即可;

⑦head命令:用于显示文件的开头部分,默认情况下只显示文件的前10行内容;
语法:head [参数] 文件名
    head -n num:显示指定文件的前num行;
    head -c num:显示指定文件的前num个字符;
  
⑧tail命令:用于显示文件的末尾部分,默认情况下只显示文件的末尾10行内容;
语法:tail [参数] 文件名
    tail -n num:显示指定文件的末尾num行
    tail -c num:显示指定文件的末尾num个字符
    tail +num:从第num行开始显示指定文件的内容 

⑨mkdir命令:用于创建一个目录;
语法:mkdir [参数] 目录名
常用参数:-p:如果父目录不存在,则同时创建该目录及该目录的父目录;

⑩rmdir命令:用于删除空目录;
语法:rmdir [参数] 目录名
常用参数:-p:在删除目录时,一起删除父目录,但父目录中必须没有其他目录及文件;

①cp命令:用于文件或目录的复制;
语法:cp [参数] 源文件 目标文件
常用参数:-f:如果文件或目录存在,先删除他们在进行复制(即覆盖),并且不提示用户;
      -i:如果目标文件或目录存在,提示是否覆盖已有的文件;
      -R:递归复制目录,即包含目录下的各级子目录;

②mv命令:用于文件或目录的移动或改名;
语法:mv [参数] 源文件或目录 目标文件或目录;
常用参数:-i:如果目标文件或目录存在时,提示是否覆盖目标文件或目录;
      -f:无论目标文件或目录是否存在,直接覆盖目标文件或目录,不提示;

③rm命令:用于文件或目录的删除;
语法:rm [参数] 文件名或目录名
常用参数:-i:删除文件或目录时提示用户
      -f:删除文件或目录时提示用户
     -R:递归删除目录,即包含目录下的文件和各级子目录

④diff命令:在最贱的情况下,比较给定的两个文件的不同;如果使用-代替文件参数,则要比较的内容将来自标准输入;diff命令是以逐行的方式,比较文本文件的异同处;如果该命令制定进行目录的比较,则将会比较该目录中具有相同文件名的文件,而不会对其子目录文件进行任何比较操作;
语法:diff (选项) (参数)
选项:-<行数>:指定要显示多少行的文本,此参数必须与-c或-u参数一并使用;
   -a或--text:diff预设只会逐行比较文本文件;
   -b或--ignore-space-change:不检查空格字符的不同;
   -B或--ignore-blank-lines:不检查空白行;
   -c:显示全部内容,并标出不同之处;
   -C<行数>或--context<行数>:与执行-c-<行数>指令相同;
   -d或--minimal:使用不同的演算法,以小的单位来做比较;
   -D<巨集名称>或ifdef<巨集名称>:此参数的输出格式可用于前置处理器巨集;
   -i或--ignore-case:不检查大小写的不同;
   -q或--brief:仅显示有无差异,不显示详细的信息;
   -r或--recursive:比较子目录中的文件;
   -s或--report-identical-files:若没有发现任何差异,仍然显示信息;
   -S<文件>或--starting-file<文件>:在比较目录时,从指定的文件开始比较;
   -t或--expand-tabs:在输出时,将tab字符展开;
   -T或--initial-tab:在每行前面加上tab字符以便对其;                              -v或--version:显示版本信息;
   -w或--ignore-all-space:忽略全部的空格字符;
   -x<文件名或目录>或--exclude<文件名或目录>:不比较选项中所指定的文件或目录;

⑤tar命令:用于文件打包的命令;
语法:tar (选项) (参数)
选项:-A或--catenate:新增文件到已存在的备份文件;
   -B:设置区块大小;
   -c或--create:建立新的本份文件;
   -C <目录>:这个选项用在解压缩,若要在特定目录解压缩,可以使用这个选项;
   -d:记录文件的差别;
   -x或--extract或--get:从备份文件中还原文件;
   -t或--list:列出备份文件的内容;
   -z或--gzip或--ungzip:通过gzip指令处理备份文件;
   -Z或--compress或--uncompress:通过compress指令处理备份文件;
   -f<备份文件>或--file=<备份文件>:指定备份文件;
   -v或--verbose:显示指令执行过程;
   -r:添加文件到已经压缩的文件;
   -u:添加改变了和现有的文件到已经存在的压缩文件;
   -j:支持bzip2解压文件;
   -l:文件系统边界设置;
   -k:保留原有文件不覆盖;
   -m:保留文件不被覆盖;
   -w:确认压缩文件的正确性;
   -p或--same-permissions:用原来的文件权限还原文件;
   -P或--absolute-names:文件名使用绝对名称,不移除文件名称前的/号;
   -N <日期格式>或--newer=<日期时间>:只比较指定日期更新的文件保存到备份文件里;
   --exclude=<范本样式>:排除符合范本样式的文件;
参数:文件或目录:指定要打包的文件或目录列表;
tar -cvf log.tar log2017.log 仅打包,不压缩;
tar -zcvf log.tar.gz log2017.log 打包后,以gzip压缩;
tar -jcvf log.tar.bz2 log2017.log 打包后,以bzip2压缩;
将tar包解压缩: tar -zxvf log.tar.gz

⑥whereis命令:用来寻找命令的可执行文件所在的位置;
语法:whereis [参数] 命令名称
常用参数选项: -b:只查找二进制文件;
                         -m:只查找命令的联机帮助手册部分;
                         -s:只查找源代码文件;

⑦grep命令:用于查找文件中包含有指定字符串的行;
语法:grep [参数] 要查找的字符串 文件名
常用参数选项: -v:列出不匹配的行;

系统信息类命令

①dmesg命令用实例名和物理名称来标识连到系统上的设备;显示系统诊断信息、操作系统版本号、物理内存大小以及其他信息;
②df命令主要用来查看文件系统的各个分区的占用情况;空间大小的单位是K;
③du命令主要用来查看某个目录中的各级子目录所使用的硬盘空间数;基本用法事在命令后跟目录名,如果不跟目录名,则缺省为当前目录;
④free命令主要用来查看系统内存,虚拟内存的大小及占用情况;
⑤date命令可以用来查看系统当前的日期和时间;还可以用来设置当前日期和时间(只有root用户才可以改变系统的日期和时间);
⑥cal命令用于显示指定月份或年份的日历,可以带两个参数,其中年、月份用数字表示;只有一个参数时表示年份,年份的范围为1~9999;不带任何参数的cal命令显示当前月份的日历;

进程管理类命令

①ps命令用来查看系统的进程;
语法: ps [参数]
常用参数选项: -a:显示当前控制终端的进程(包含其他用户的);
不加参数执行ps命令:

不加选项执行ps命令

结果默认会显示4列信息。

    - PID: 运行着的命令(CMD)的进程编号
    - TTY: 命令所运行的位置(终端)
    - TIME: 运行着的该命令所占用的CPU处理时间
    - CMD: 该进程所运行的命令
 ps -ax | less 使用-a参数。-a 代表 all。同时加上x参数会显示没有控制终端的进程;这个命令的结果或许会很长,为了便于查看,可以结合less命令和管道来使用。
  -u:根据用户过滤进程 ps -u qz   qz为用户名
通过CPU和内存使用来过滤进程 ps -aux | less  内存/CPU升序 ps -aux --sort -pmem/pcpu | less
②kill命令用来中止一个进程;
语法:kill [ -s signal | -p ] [ -a ] pid ... 
    kill -l [ signal ] 
参数:-s:指定发送的信号。 
    -p:模拟发送信号。 
    -l:指定信号的名称列表。 
    pid:要中止进程的ID号。 
    Signal:表示信号。
#kill -9 xxx
#kill -SIGKILL XXX 
# kill -pid 注释:标准的kill命令通常都能达到目的。终止有问题的进程,并把进程的资源释放给系统。然而,如果进程启动了子进程,只杀死父进程,子进程仍在运行,因此仍消耗资源。为了防止这些所谓的“僵尸进程”,应确保在杀死父进程之前,先杀死其所有的子进程。 
*确定要杀死进程的PID或PPID 
# ps -ef | grep httpd
*以优雅的方式结束进程
# kill -l PID
-l选项告诉kill命令用好像启动进程的用户已注销的方式结束进程。当使用该选项时,kill命令也试图杀死所留下的子进程。但这个命令也不是总能成功--或许仍然需要先手工杀死子进程,然后再杀死父进程。
③top命令可以实时监控进程的状态;
top -d 20 使得屏幕每20秒钟刷新一次;

④bg命令用于把进程放到后台运行;

⑤jobs命令用于查看在后台运行的进程;

⑥fg命令用于把从后台运行的进程调到前台;

其他常用命令

①clear命令用于清除字符终端屏幕内容;

②uname命令用于显示系统信息;

③man命令用于列出命令的帮助手册;

④shutdown命令用于在指定时间关闭系统;

⑤halt命令表示立即停止系统,但该命令不自动关闭电源,需要人工关闭电源;

⑥reboot命令用于重新启动系统,相当于“shutdown - r now”;

⑦poweroff命令用于立即停止系统,并关闭电源,相当于“shutdown -h now”;

⑧alias命令用于创建命令的别名;
alias httpd="vi/etc/httpd/conf/httpd.conf"
//定义httpd为命令"vi/etc/httpd/conf/httpd.conf"的别名

⑨unalias命令用于取消别名的定义;
unalias httpd

⑩history命令用于显示用户最近执行的命令;
只要在命令编号前加!,就可以重新运行history中显示出的命令行;