##常用命令
 1.cd:切换到指定目录
   cd /
   cd /etc
   cd /etc/sysconfig/network-scripts
   cd ~  #切换到当前用户的家目录
   cd    #同上
   cd -  #切换到上一次cd切换到的目录
   cd .  #切换到当前目录
   cd .. #切换当前目录的上级目录2.ls:查看当前目录下的数据或指定目录下的数据
   ls
   ls /etc
   ls -l  /   #以长格式的形式查看/下的所有文件
 ls常用选项
   -l:以长格式的形式查看文件或目录
   -h:以指定格式输出文件或目录的大小
   -d:查看目录本身
   -R:递归查看目录
   -a:查看所有文件,包含隐藏文件以及.和..
   -A:查看所有文件,包含隐藏文件但不包含.和..
   --color:不同类型的文件使用不同的颜色表示
   ?:匹配任意一个字符
   *:匹配任意多个字符3.which:查看命令对应的文件所在位置
   which mkdir4.mv:移动文件或者目录,也可以修改文件或目录名称
   mv /usr/bin/touch  ~
   mv ~/touch /usr/bin/5.rm:删除文件或目录
   rm -rf haha
 常用选项
   -f:删除文件时不再询问是否删除
   -r:删除目录6.pwd:查看当前所在位置的绝对路径
7.su:切换用户
   su  test8.useradd:创建一个新的普通用户
   useradd  one
 常用选项
   -u:指定用户的UID
   -e:指定用户过期几天后用户禁用
   -g:指定用户的基本组
   -G:指定用户的附加组
   -d:指定用户的家目录
   -M:不给用户创建家目录
   -s:指定用户的shell环境  useradd -u 1010 -e 10 -g 1010 -G 1020 -d /one lala  #创建普通用户lala并将用户的UID设置为1010,lala用户密码过期10天后用户将被禁用,用户的基本组ID为1010,用户的附加组ID为1020,用户的家目录为/one
  
   useradd -u 233 -M -s /sbin/nologin dada #创建程序用户dada,并将用户的UID设置为233,不给用户创建家目录,指定用户的shell为/sbin/nologin也就意味着用户不能正常登陆到系统中 9.userdel:删除指定的用户,会同时删除用户的基本组
   userdel -r one  #删除用户的同时删除用户的宿主目录和邮件10.mount:将光盘或磁盘分区挂载到指定位置
    mount /dev/sr0  /mnt  #将光盘文件sr0挂载到/mnt目录下,即可在/mnt下获取sr0的数据11.umount:卸载光盘或磁盘
    umount  /dev/sr0  #卸载光盘文件sr012.cp:拷贝文件或目录
    cp  /lala  /usr  #把/下的lala文件拷贝到/usr目录下
    cp -r  /test  /usr  #把/下test子目录拷贝到/usr目录下,拷贝目录时需要选项-r
 常用选项
 -r:拷贝目录或文件
 -p:拷贝文件时保留文件原有的权限和属性13.gzip:对指定文件进行压缩
    gunzip:对gz后缀的压缩包进行解压
    gzip  haha   #对haha文件进行压缩,压缩后的文件为haha.gz
    gzip -9 xixi  #以最高的压缩比对xixi文件进行压缩,压缩后的文件为xixi.gz
    gunzip  haha.gz  #对以.gz为后缀的压缩包haha.gz进行解压14.bzip2:对指定的文件进行压缩
    bunzip2:对以bz2为后缀的压缩包进行解压
    bzip2  heihei  #对heihei文件进行压缩,压缩后的文件为heihei.bz2
    bzip2 -9  gugu  #以最高的压缩比对gugu文件进行压缩,压缩后的文件为gugu.bz2
    bunzip2  heihei.bz2  #对以.bz2为后缀的压缩包heihei.bz2进行解压15.dd if=源文件数据  of=目标文件数据 bs=单次写入数据块大小  count=写入次数  #向指定文件写入指定大小的数据
    dd if=/dev/zero  of=/test  bs=1M count=50  #将/dev/zero文件的数据写入到/test文件,一共写入50次,每次写入1M的数据16.cat:查看指定文件的内容
    cat /etc/fstab17.more,less:以全屏的形式查看指定文件的内容
    more  /etc/profile
    less  /etc/profile18.head:查看指定文件的内容,从第一行开始查看,查看指定的行数
    head  -5  /etc/fstab  #查看fstab文件前五行数据19.tail:查看指定文件的内容,从最后一行开始查看,查看指定的行数
    tail -7  /etc/fstab  #查看fstab文件最后七行数据   
 查看/root/anaconda-ks.cfg该文件第10行到第20行之间的数据
 head -20 /root/anaconda-ks.cfg | tail -1020.passwd:修改指定用户的密码
    passwd   #单独执行passwd指令可以修改当前用户的密码,普通用户和管理员用户都可以给自己修改密码
    passwd  test  #给指定用户test修改密码,只有管理员用户root才可以给其它用户修改密码
 常用选项
    -d:删除用户密码,用户密码删除之后仍然可以空密码登录
    -l:锁定用户账户,被锁的用户无法登录系统
    -u:解锁用户账户,如果用户锁定之前没有密码那么解锁后不能再空密码登录
    -S:查看用户账户的信息21.groupadd:创建用户组
    groupadd s12822.gpasswd:向用户组中添加用户或者删除用户组中的用户
    gpasswd -a five s128  #向用户组s128添加用户five
    gpasswd -d xiaoming s128 #将用户xiaoming从用户组s128删除常用选项
   -a:向指定的用户组中添加一 个用户
   -M:向指定的用户组中添加多个用户,如果用户已经存在用户则会覆盖
   -d:删除用户组中指定的用户23.groupdel:删除用户组
    groupdel s12824.ln:创建链接文件
    ln  putong  one  #对文件putong创建硬链接文件one
    ln -s putong two  #对文件putong创建软连接文件two25.chown:修改文件或目录的属主和属组
    chown -R test:test  /xixi  #将/xixi目录即目录中的子目录和文件的属主和属组改为test,-R表示递归修改26.chmod:修改文件或目录的权限
    小知识
    文件的权限分为:r可读,可以使用八进制4表示;w可写,可以使用八进制2表示;x可执行,可以使用八进制1表示
    可以给属主,属组,其他用户配置对文件的使用权限,u表示属主,g表示属组,o表示其他用户,a表示所有用户,=表示设置权限,-表示降权,+表示提权
    chmod 777  /haha  #给文件的属主属组其他用户都设置可读可写可执行的权限
    chmod o-x  /haha  #取消其他用户对haha文件的可执行权限
    chmod g-x  /haha  #取消属组对haha文件的可执行权限
    chmod u-x  /haha  #取消属主对haha文件的可执行权限
    chmod a+w  /haha  #让所有用户对haha文件拥有可写的权限27.alias:给指定的命令起别名
    alias  别名=命令
    alias net='vim /etc/sysconfig/network-scripts/ifcfg-ens33'28.du:统计文件或目录所占磁盘空间,默认单位为KB
    du  /root/aa   #统计文件aa所占用的磁盘空间
 常用选项
    -a:统计指定目录及子目录和文件的大小
    -s:只统计指定目录或文件的大小
    -h:以指定格式输出文件大小29.mkdir:创建空目录
    mkdir /test  #创建空目录test
 常用选项
    -p:递归创建空目录30.touch:更新文件的时间信息,如果指定的文件不存在则创建指定的文件并更新文件的时间信息
    touch cc  #更新文件cc的时间信息,如果cc文件不存在则创建31.find:按照条件查找文件或目录
    find  查找范围  查找类型  
 常用查找类型
    -name:根据文件名查找
    -size:根据文件大小查找
    -user:根据文件属主查找
    -type:根据文件类型查找
 例:
    find  /  -name  abc  #在/目录及子目录下查找文件abc
    find  /etc  -size  +100M  #在/etc目录下查找大于100M的文件
    find  /usr  -user nobody  #在/usr目录下查找属主为nobody的文件
    find /tmp  -type d  #在/tmp目录下查找类型为目录的数据如果有多个查找条件都需要满足可以通过-a进行条件连接
    find / -name 'aa*' -a -size +1k  #查找以aa开头文件且文件大小大于1k如果多个查找条件只需要满足一个可以通过-o进行条件连接
    find / -size +100M  -o  -type  d #查找文件大小大于100M或者文件类型为目录类型32.echo:将指定的数据输出到终端
    echo 123
    echo 'hahahah'
    echo $PATH   #将变量PATH的值输出在终端33.>:重定向符号,重新定义数据输出的位置
    echo hahahah > /128  #将原本要输出在终端的hahahah输出到指定的文件128中34.wc:统计文件中的单词数,行数和字节数
 常用选项
    -l:统计文件的行数
    -w:统计文件的单词数
    -c:统计文件的字节数
    wc -l  /128  #统计文件128有几行数据
    wc -w /128  #统计文件128有几个单词
    wc -c /128  #统计文件128有多少字节
    ls / | wc -l  #统计/目录下有多少个文件和目录35.|:管道符,将管道符前的命令执行结果作为管道符后的命令执行条件
36.grep:用来对文本进行过滤,筛选出符合要求的数据
 常用选项
    -v:反向查找,将不符合要求的数据列出
    -i:不区分大小写
 常用符号
    ^:以...开头
    $:以...结尾
    ^$:表示空行   ls / | grep '^aa' #查看/目录下以aa开头的文件,区分大小写
   ls / | grep -i 'aa$' #查看/目录下以aa结尾的文件,不区分大小写
   
    cat /haha | grep -v '^$'  #查看文件haha除了空行以外的所有内容37.tar:创建归档文件,对归档文件进行解档
 常用选项
    -c:创建归档文件
    -x:解档
    -v:归档,解档时显示详细信息
    -f:使用tar指令必须带的选项
    -t:列出归档文件中的文件
    -z:归档时使用gzip工具压缩,解档时使用gunzip工具解压
    -j:归档时使用bzip2工具压缩,解档时使用bunzip2工具解压
    -C:指定文件解档后存放的路径   tar -zcvf test.tar.gz  aa bb #对文件aa,bb进行归档压缩(gzip),归档压缩文件为test.tar.gz
  
    tar -zxvf test.tar.gz  #对归档压缩后的文件test.tar.gz进行解压(gunzip)解档   tar -jcvf test1.tar.bz2  xx yy #对文件aa,bb进行归档压缩(bzip2),归档压缩文件为test.tar.gz
  
    tar -jxvf test1.tar.bz2  #对归档压缩后的文件test.tar.gz进行解压(bunzip2)解档   tar -cf  test2.tar kk ll  #对文件kk,ll进行归档
   tar -tf  test2.tar  #查看归档文件test2.tar中的文件信息
38.输出重定向:对数据的输出位置重新定义
    >:输出重定向,对命令正确的执行结果输出到指定文件,如果文件中有数据会被覆盖
    >>:输出重定向,对命令正确的执行结果输出到指定文件,如果文件中有数据会进行追加   2>:错误输出重定向,对命令执行时的报错信息进行输出重定向,如果文件中有数据会被覆盖
    2>>:错误输出重定向,对命令执行时的报错信息进行输出重定向,如果文件中有数据会进行追加   &>:输出重定向,对命令正确和错误的输出结果进行输出重定向
39.rpm:用来安装,卸载管理以.rpm结尾的软件包
 常用选项
 -q:查询已安装过的rpm软件包的相关信息
    -qa:查看系统中所有已经安装过的软件包
    rpm -qa  #查看系统中所有安装的软件包
    rpm -qa | wc -l  #查看系统中所有安装的软件包的数量 
    rpm -qa | grep vim-common  #查看系统中是否安装了vim-common这个软件包
    
    -qi:查看指定软件包的相关信息
    rpm -qi vim-common  #查看vim-common软件包的相关信息
     
    -ql:列出来指定软件包包含的文件
    rpm -ql vim-common  #查看软件包vi-common中包含的文件   -qf:查看指定的文件或目录属于哪个软件包
    rpm -qf /usr/share/vim  #查看/usr/share/vim目录属于哪个软件包
    
    -qc:查看软件包的配置文件所在位置
    rpm -qc vim-common  #查看vim-common软件的配置文件所在位置   -qd:查看指定软件的帮助文档
    rpm -qd vim-common  #查看vim-common软件的帮助文档有哪些-qp:查看未安装的软件包gpasswd的相关信息
    -qpi:查看指定的未安装的软件包的信息
    -qpl:查看指定的未安装的软件包所包含的文件
    -qpc:查看指定的未安装的软件包的配置文件
    -qpd:查看指定的未安装的软件包的帮助文档-i:安装指定的软件包
 -h:显示安装的进度
 -v:显示安装的详细信息
    rpm -ihv dhcp-4.2.5-47.el7.centos.x86_64.rpm   #安装软件包dhcp-e:卸载软件
    rpm -e dhcp  #卸载dhcp--initdb:重建rpm数据库
 --rebuilddb:重建rpm数据库--import 公钥文件:导入软件的公钥文件
--nodeps:安装或者卸载软件包时忽略软件包之间的依赖关系
40.usermod:修改用户的属性
 常用选项
   -u:修改指定用户的UID
   -g:修改指定用户的基本组
   -G:修改指定用户的附加组
   -e:修改指定用户的密码过期几天后禁用用户
   -d:修改指定用户的家目录
   -s:修改指定用户的shell环境
   -L:锁定指定的用户
   -U:解锁指定的用户  usermod -u 555 -d /lisi -s /bin/bash lisi #将用户lisi的UID修改为555,家目录修改为/lisi,shell环境修改为/bin/bash
   
   usermod -L lisi #锁定用户lisi
   
   usermod -U lisi  #解锁用户lisi41.groups:查看指定的用户所在的组  
    groups lisi  #显示的第一个组为用户的基本组,其余的为用户的附加组42.id:查看当前用户的信息,包括用户的UID,基本组ID,用户的安全上下文
43.w:查看当前终端用户登录的信息,包含用户登录的时间,登录的终端及用户名
    who:查看当前系统登录的用户信息
    users:列出当前系统登录的用户名44.umask:设置权限的掩码
45.ping:测试网络连通性
46.hostname:修改查看主机名
47.route:查看配置路由信息
    route  -n  #查看已配置的所有的路由信息
    route add -net 192.168.10.0 dev ens33 #添加一条经过ens33网卡到达192.168.10.0网段的路由信息
    route del -net 192.168.10.0 #删除到达192.168.10.0网段的路由信息48.traceroute:显示从当前主机到达目标主机所经过的节点
49.ifconfig:查看或者临时配置网卡信息
50.nslookup:域名解析
51.netstat:查看系统中服务的运行状态信息
 常用选项
    -a:查看所有的程序运行信息
    -n:以数值的形式列出程序运行信息
    -u:列出基于udp协议的程序运行信息
    -p:列出程序的进程号
    -t:列出基于tcp协议的程序运行信息
    -r:列出路由信息