码迷,mamicode.com
首页 > 系统相关 > 详细

Linux常用命令

时间:2017-10-20 02:16:38      阅读:269      评论:0      收藏:0      [点我收藏+]

标签:linux系统基础

获取命令的使用帮助的几种方法:
 1.man:(针对于linux内部命令)
  man九章:
   1.用户命令帮助文档(所有用户都可以执行的命令)
   2.系统调用
   3.库调用(c库调用)
   4.(特殊调用)设备和特殊文件
   5.配置文件格式
   6.游戏相关的帮助信息
   7.杂项
   8.系统管理员类命令
   9.内核历程相关的帮助信息
 在每个man手册中都常见到的一些字段:
  NAME:程序的名称及相关的功能的简单描述
  SYNOPSIS:命令使用的语法格式
  DESCRIPTION:程序的详细描述信息
  OPTIONS:选项的用法和选项的含义的详细说明
  AUTHOR:程序作者的信息
  EXAMPLES:命令程序的使用范例
  REPORTING BUGS:报告程序中所含的BUG的方式,通常是电子邮件
  SEE ALSO:额外参考的内容
  FILE:与该程序相关的其他的文献资料,如配置文件,README文档等
 在帮助信息中可能出现的一些特殊符号的意义:
  []:可以省略不写,也可以根据需要选择使用
  {}:在花括号中一般包含竖线“|”,表示从所有项目中必须选择而且只能选择一个使用:“|”有或者之意
  <>:必须书写的内容
  …:可以有更多内容
  区分内部命令和外部命令的方法:
   # type COMMEND
    查找结果中显示为“内嵌”或者“buildin”字样的,则为内部命令
    其余的结果都为外部命令
   内部命令的帮助获取不使用man手册,而使用help命令
    # help BUILDIN_COMMAND
 2.使用whereis命令获得帮助
  可以查看程序的二进制文件、源代码文件及帮助手册所在的位置
 3.whatis
  可以获取被匹配到的命令的手册页的描述信息
 4.which
  可以显示命令的别名的定义方式和命令的二进制文件的路径
 5.info命令
  infoCOMMAND
  获取命令的在线帮助文档
 6.有很多的程序有自带的帮助文档
  /usr/share/doc/APP_NAME-VERSION/
   README:程序的相关信息
   INSTALL:程序的安装信息
   CHANGES:程序的版本更迭的历程相关的信息
   LICENSE:程序所遵循的许可证类型
    GPL
    LGPL
    BSD
    Apache
    MIT
 7.搜索引擎
  Google
   搜索技巧  mysql filetype:pdf
      mysql site:51cto.com 
 8.相关的网站站点中的文档信息
  wiki
  FAQ
 9.程序的发行方的官方站点提供的官方文档
 10.参考书籍:
  O‘Reiley
  Wrox
  电子工业出版社
 简单的系统管理类的命令:
  注销:在Linux里边就是退出登录而已
   exit
   logout
   ctrll+d 
  重启(重新引导):将运行于内存中的所有进程关闭,关闭系统内核,对于所有的计算机部件进程重新通电,加载内核,启动应用程序,打印登陆提示符
   reboot
   shutdown -r -t #|now|time            (推荐)
    #:数字,表示相对时间,即#分钟之后重新引导
    now:现在,立即重新引导,相当于-t 0;
    time:12:00
   init 6
  关闭系统:将运行于内存中的所有进程关闭,关闭系统内核,对于所有的计算机部件断电
   halt
   poweroff
   init 0
   shutdown -h {#|now|time}        (推荐)
linux的哲学思想
 1.一切皆文件
  Linux把几乎所有的数据和资源都抽象(虚拟)成文件的形式,甚至包括硬件网络通信设备所使用的套接字以及管道都是如此
  文件:一组有边界的位于存储设备中的流式数据
 2.由众多的功能单一的小程序组成,可以实现复杂任务
  功能单一:每个小程序只做一件事,只实现一个功能;并且要做到最好
  复杂任务:可以根据业务逻辑或业务类型,尽可能完美的组合多个小程序,使多个小程序相辅相成,将功能发挥至极致
 3.尽量避免与用户直接交互
  在程序化,系统化,平台化,自动化的运维空间中,人是极其易出错的一个环节;尽量避免与用户直接交互可以尽可能的保证结果的准确性和
      过程的高效性;易于以编程的方式实现自动化任务的实施;
 4.使用纯文本文件保存程序的配置信息
  在程序出现错误或者执行不畅的时候,可以使用文本编程工具分析程序的错误原因,而不必依赖于二进制文件

文件系统:
 文件是分成两部分存放:
  元数据:描述文件的属性
  数据:文件的内容
  分层编址方式:
  在文件系统中,基于文件名引用文件,按名来进行文件存取
  在文件系统中,对于文件名有一系列的规定
   1.文件名不能包含“/”字符
    “/”表示根文件系统;所谓根文件系统,即为Linux文件的原始起点;
    “/”表示路径的分隔符
   2.文件名的长度不能超过255个字符
   3.在同一个位置,文件名不能重复使用;
   4.文件的名称严格区分大小写
  文件系统使用路径的概念标识文件的位置;所谓路径,就是定位一个文件所在的位置时,所必须经过的目录的层级结构的集合
  
  文件系统中路径的描述方式:
   绝对路径:一切以“/”开始查找的路径

   相对路径:一切以“当前工作目录”开始查找的路径;
    “.”:表示当前工作目录
    “..”:表示当前工作目录的父目录(上一级目录)
    因此也可以说,一切以“.”或“..”开始查找的路径,叫做相对路劲;而且在使用“.”表示当前工作目录的时候,可以省略。
   如何选择路径?选择绝对路径还是相对路径?
    如果在查找文件的时,目标文件和当前目录不顺路,就使用绝对路径;如果顺路就是用相对路径
    顺路指的是:当前工作目录被包含在绝对路径之中
   家目录:
    每个用户登录系统时默认的当前工作目录;也是每个用户的起始目录;也成为“home directory”
   任何一个路径其实都是由两部分组成:
    文件的基名:
     basename
    文件的目录名:
     dirname
FHS:文件系统的层级标准
 bin:binary,所有用户(包括普通用户)可以执行的普通操作命令
 boot(起步,启动,引导):引导操作系统启动的静态文件,包括:引导程序,Linux内核,initramfs等;
 dev:device,设备
  块设备:Block Device,随机访问,指的是能够实现数据存放的设备
  字符设备:character device,顺序访问(线性访问),指的是能够实现数据传输和数据处理功能的设备;
 etc:Exsternal Text configure,存放主机中各应用程序的配置文件;
 home:普通用户的默认家目录的根;
 lib,lib64:Library,存放应用程序共享库的目录,内核的模块
 media:可移动设备的挂载点;
 mnt:临时文件系统的挂载点;
 opt:optional,可选的,以前此目录是非常流行的第三方应用程序的安装目录
 
 root:root用户的家目录
 run:保存一些进程的PID文件;目前已废弃
 sbin:super binary,存放那些还有超级用户root能够执行的系统管理类的命令
 srv:存放由系统提供的服务的数据

 tmp:temporary,临时文件目录,系统每30天会自动清理该目录中的在30以上没有访问过的文件
 usr:usual system root,linux系统的第二根,现在主要用于安装第三方应用程序;
  /usr/local:第三根,主要用于通过编译源代码的方式安装第三方应用程序;
  /usr/src:存放第三方应用程序的源代码;
 var:variable,变量,存放可变化的数据,数据库类的文件
 伪文件系统,其中存放的是内存中的数据通过操作系统映射的文件
  proc:process,进程   
  sys:system
 文件类型:
  根据颜色来区分文件类型:
   黑色或白色:普通文本文件,regular file;
   绿色:可执行文件,命令;
   黄色:设备文件,包括块设备和字符设备;
   红色:包文件,包括:软件包,压缩包,归档包等;
   深蓝色:目录文件
   青蓝色(天蓝色):符号链接文件,相当于windows系统中的快捷方式;
   紫色(粉色):套接字文件;
   棕色:管道文件;
  根据文件类型的标记区分文件类型:
   -:普通文件
   b:块设备文件
   c:字符设备文件:
   d:目录文件;
   l:符号链接文件:
   p:管道文件
   s:套接字文件
  准确的区分文件类型:
   file命令
   #file/PATH/TO/SOMEFILE
常用的命令使用方法:
 1.echo: display a line of text
 常用选项:
  -n:不换行
  -e:使用\所引导的转义序列生效;
  \n:换行
  \t:水平制表符
 2.cd
  change the shell working directory
  切换工作目录
  cd[-L|[-P[-e]]] [dir]
  cd /PATH/TO/SOMEDIR:将工作目录切换至参数所代表的目录;
  cd:将工作目录切换至当前登录用户的家目录;相当于cd ~;
  cd -:将工作目录切换至此前最后一次的工作目录;
   shell提供了两个变量;
    PWD
    OLDPWD
    注意,在SHELL中获取变量值的方法;变量名严格区分大小写;
    echo ${VAR_NAME}
  cd ~USERNAME:将工作目录切换至指定用户的家目录中;
 3.pwd
  print the name of the current working directory
  打印当前工作目录的名称
 4.ls
  ls -list directory contents 
  注意:目录的内容是文件名;
  ls [OPTION]...[FILE]...
  在Linux的文件系统中,所有以“.”作为文件名的起始字符的文件,都是隐藏文件
  常用选项:
   -a,--all:显示所有文件,包括隐藏文件;
   -A,--almost-all:显示除了“.”和“..”之外的所有文件,包括隐藏文件
   --color[=WHEN]:以不同的颜色来显示查询结果
   -d,--directory:显示目录本身,而不是目录中的文件名
   -h,--human-
   readable:在显示文件大小的时候,显示为更加易读的格式:通常与-l选项一同使用
   -l:使用长列表格式显示文件的详细属性
   -rw-------.1 root root   1458 12月 23 2016 anaconda-ks.cfg
   -:表示文件类型
   rw-------:文件的权限位设置
   .:表示该文件是否具有特殊属性或扩展属性
   1:表示该文件被硬连接的次数
   root:文件的属主(所有者)
   root:文件的属组
   1458:表示文件的大小,在没有使用-h选项时,其单位为字节;
   12月 23 2016:文件的时间戳之一,表示最后一次被修改的时间
   anaconda-ks.cfg:文件名
   
   对于设备文件:
    ~]# ls -l /dev/sr0
    brw-rw----.1 root cdrom 11,0 9月  24  10:50 /dev/sr0
   11,0:major,minor 
   major:主设备号,用于标识设备类型,进而确定需要加载何种驱动程序
   minor:次设备号,用于标识同一种设备类型中的不同的设备
   
   设备号默认使用8位二进制表示,所以默认的设备号的范围是0-255
   
    -r,--reverse:倒序输出结果
   -R,--recursive:递归显示,如果目标目录中有子目录,则递归显示子目录的内容,一次递归下去
   -Z,--context:显示文件的SELinux安全上下文标签
   
 5.mkdir
  mkdir - make directories,创建新目录
  mkdir [OPTION]...DIRECTION...
   -P,--parents:在创建目录的时候,如果其父目录不存在,则优先创建之;
   -v,--verbose:为每个被创建的目录显示一条信息
 6.rm
  rm - remove files or directories

  rm [OPTION]... FILE...
   -f, --force:暴力,强制删除;
   -r, -R, --recursive:递归删除目录及目录中的内容;
 7.touch
  touch - change file timestamps修改文件的时间戳记.
  -c, --no-create 不创建任何文件
  -a:仅修改文件的访问时间戳
  -m:仅次该文件的修改时间戳
  -t decimtime
              这里时间值 的格式为MMDDhhmm[[CC]YY][.ss] 从左至右分别是月份,日期,小时,分钟,可选的世纪和      年,以及可选的秒.      touch    
              将用这组数值修改指定文件的时间戳记.请注意,这个格式与POSIX标准所规定的格式并 不一样.
    额外的,如果没有指定-c选项,touch命令可以创建出被指定为参数且不存在的文件
 8.stat
  stat - display file or file system status,显示文件或文件系统的状态;
  格式:stat [OPTION]... FILE...
   常用选项:
    -c, --format=FORMAT:以指定的格式显示文件的指定状态属性;
 9.nano - Nano‘s ANOther editor, an enhanced free Pico clone
   nano [OPTIONS] [[+LINE,COLUMN] FILE]...
  ^:脱字符,表示键盘上的ctrl键
  ^+o:保存文档内容
  ^+x:退出编辑界面
 10.cat - con;catenate files and print on the standard output  连接文件并在标准输出上输出
  格式:cat [OPTION]... [FILE]...
   常用选项:
    -b, --number-nonblank:对非空白行进行编号输出;
    -n, --number:对所有行编号输出;
    -s, --squeeze-blank:合并连续的空白行;
    -E, --show-ends:在行尾以$字符显示;
  tac - concatenate and print files in reverse
  格式:tac [OPTION]... [FILE]...
  注意:cat或tac命令,如果没有给出参数,则所有的内容需要通过标准输入(从键盘键入)完成;而后可以使用"^+c"或者"^+d"退出即可;
 11.head - output the first part of files 输出文件的起始部分
  格式:head [OPTION]...[FILE]...
   常用选项:
    -c, --bytes=[-]K:以字节为单位显示相应长度的内容;
    -n, --lines=[-]K:以行为单位显示相应长度的内容;
     可以使用-#K方式替换-n #K;
    注意:如果不使用任何选项,则默认显示指定文件内容的前10行;如果文件中不足10行,则显示全部内容;


 12. tail - output the last part of files 输出文件的末尾部分
   格式:../src/tail [OPTION]... [FILE]...
   常用选项:-c, --bytes=N 输出最后N个字节

            -f, --follow[={name|descriptor}]
                  当文件增长时,输出后续添加的数据; -f, --follow以及 --follow=descriptor 都是相同的意思

            -n, --lines=N 输出最后N行,而非默认的最后10行

 13.more
  more - file perusal filter for crt viewing 分页显示文档内容
  格式:more [options] file [...]

  交互式编辑方法:
   可以使用"/"根据后续给出的字符串组合进行查找过滤;
   可以使用"n"找到下一个匹配项;
   使用"q"退出more模式;
   使用Enter,可以向下翻一行;
   使用Space,可以向下翻一页;

 14.less
  less - opposite of more 
   格式:less [options] file [...]
   交互式编辑方法:
   可以使用"/"或"?"根据后续给出的字符串组合进行查找过滤;
   可以使用"n"或"N"找到下一个匹配项;
   使用"q"退出more模式;
   使用Enter,可以向下翻一行;
   使用Space,可以向下翻一页;
   
 日期和时间相关的命令:
 15.date
  操作系统时间,简称系统时间,使用软件模式的时钟记录的时间
  date - printf or set the system date and time
  格式:
   date [OPTION]... [+FORMAT]
         date [-u|--utc|--universal] [MMDDhhmm[[CC]YY][.ss]]
   常用选项:
    -s, --set =STRING:设置系统时间为指定的时间
    两种格式:
     1)MMDDHHmm[[CC]YY][.ss]
     2)"CCYY-MM-DD HH:mm:ss" 或"CCYY/MM/DD HH:mm:ss"
  FORMAT
   
     %F:表示完整的年月日格式,即:YY-mm-dd
     %T:表示完整的时分秒格式,及:HH:MM:SS
     %Y:表示完整年份
     %m:表示月份
     %d:表示日期
     %H:表示小时
     %M:表示分钟
     %S:表示秒钟
     %s:时间戳,从1970-01-01 00:00:00到当前系统时间所经历的秒数;
     注意:1970年1月1日作为Unix元年;
     此时间戳是由32位二进制表示的,所以其表示的最大范围0~4294967295;
 16.clock/hwclock
  hwclock - query or set the hardware clock (RTC)
   格式:
   hwclock [function] [option...]
   常用选项:
    -s, --hctosys:根据硬件时钟设置系统时间;
    -w, --systohc:根据系统时间设置硬件时钟;(不推荐)
 17.cal
  与关机,重启,注销有关的命令
  关机:half,poweroff,shutdown -h TIME,init 0:;
  重启:reboot,shutdown -r TIME,init 6;
  注销:exit,logout,^+d;
 18.cp
  cp - copy files and directories
  格式:cp [OPTION]... [-T] SOURCE DEST:单源复制
        cp [OPTION]... SOURCE... DIRECTORY:多源复制

 
  注意:
   1)cp命令至少要接两个参数
   2)最后一个参数,通常是此次复制的目标
   3)如果在复制时给出的目标是目录,则直接将文件复制到指定的目录中,保留原文件名;如果在复制非目录文件时,给出的目标是非目录的文件    ,则此次操作时复制并改名。
  
   常用选项:
    -R,-r,--recursive:递归的复制目录文件:
    -d   same as --no-dereference  --preserve=links
     复制的源文件是符号链接文件时,-d选项可以保留该符号链接文件作为此次的源文件被复制,而不会复制该符号链接文件所指     的文件
 19.mv
  mv - 移动 (改名) 文件
  格式:
    mv [选项]... 源文件 目标文件
           mv [选项]... 源文件... 目录
   常用选项:
    -f, --force :覆盖前永不提示
    -n, --no-clobber:移动文件时,如果源文件与目标位置中的文件重名,则不移动



本文出自 “小小殊童” 博客,请务必保留此出处http://yigechenlin.blog.51cto.com/13306169/1974387

Linux常用命令

标签:linux系统基础

原文地址:http://yigechenlin.blog.51cto.com/13306169/1974387

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!