zoukankan      html  css  js  c++  java
  • Linux 常见命令

    Linux 命令语法:

      命令格式: 命令 【-选项】【参数】
      例子:   ls -la /etc
      说明:      ①、个别命令使用不遵循此格式
             ②、当有多个选项时,可以写在一起
             ③、简化选项(一般用一个-)与完整选项(一般用两个--)
               比如 ls  -a 等于 ls  --all

    目录处理命令 

    1、目录处理命令:ls
    ①、命令名称:ls
    ②、英文原意:list
    ③、命令所在路径:/bin/ls
    ④、执行权限:所有用户
    ⑤、功能描述:显示目录文件
    ⑥、语法: ls 选项【-ald】【文件或目录】

         -a 显示所有文件,包括隐藏文件

         -l 详细信息显示

         -d 仅显示目录名,而不显示目录下的内容列表

         -h 人性化显示(hommization)

         -i 查看任意一个文件的i节点(类似于身份证唯一信息)

                  -t:用文件和目录的更改时间排序;可以用第一个显示的文件判断最近修改的文件

    注意:. 开头的文件除非是目录,否则就是隐藏文件

     以 -rw-------. 1 root root 1.3k Mar 11 08:05 anaconda-ks.cfg 为例解析如下:

    -rw-------  第一位表示文件类型,- 表示是二进制文件,d 表示目录, l 表示软连接文件。后面的每三个为一组

          rw-  ---  ---
          u     g     o
          u所有者 g所属组 o 其他人
          r 读 w写 x执行 -无权限

    1 引用计数,表示文件被引用过多少次

    第一个root 表示所有者

    第二个root 表示所属组

    1.3k 表示文件字节大小,不带单位表示字节

    Mar 11 08:05 表示文件的最后修改时间。注意:Linux没有明确的创建时间,只有最后一次访问时间、文件的状态修改时间、文件的数据修改时间
    anaconda-ks.cfg 表示文件名

     

    2、目录处理命令:mkdir
    ①、命令名称:mkdir
    ②、英文原意:make directories
    ③、命令所在路径:/bin/mkdir
    ④、执行权限:所有用户
    ⑤、功能描述:创建新目录
    ⑥、语法:mkdir 【-p】 【目录名】

         -p 递归创建

    例子:mkdir /tmp/vae.txt
    注意:1、创建的目录已经存在, 那么 Linux 会提示我们 Linux 无法创建它。

             2、不带任何参数运行 mkdir 命令会在当前目录下创建目录。

             3、不带上-p,如果新建的文件上级目录不存在则不会执行成功。

             4、创建目录的首要条件是, 在想要创建目录的目标路径下你必须具有访问权限。

     

    3、目录处理命令:cd
    ①、命令名称:cd
    ②、英文原意:change directory
    ③、命令所在路径:shell 内置命令
    ④、执行权限:所有用户
    ⑤、功能描述: 切换目录
    ⑥、语法:cd 【目录】
    范例:$cd /tmp/vae 切换到指定目录

       cd .. 回到上一级目录

         cd . 还是在当前目录

            cd ../..  返回上两级目录

            cd  -  返回进入此目录之前所在的目录

    4、目录处理命令:pwd
    ①、命令名称:pwd
    ②、英文原意:print working directory
    ③、命令所在路径:/bin/pwd
    ④、执行权限:所有用户
    ⑤、功能描述:显示当前目录
    ⑥、语法:pwd

    范例:$ pwd

     

    5、目录处理命令:rmdir
    ①、命令名称:rmdir
    ②、英文原意:remove empty directories
    ③、命令所在路径:/bin/rmdir
    ④、执行权限:所有用户
    ⑤、功能描述:删除空目录(如果里面有文件是删除不了的)
    ⑥、语法:rmdir [目录名]
    范例:$ rmdir /tmp/vae

     

    6、目录处理命令:cp
    ①、命令名称:cp
    ②、英文原意:copy
    ③、命令所在路径:/bin/cp
    ④、执行权限:所有用户
    ⑤、功能描述:复制文件或目录
    ⑥、语法:cp -rp 【原文件或目录】【目标目录】

           cp -r 复制目录

                  cp -p 保留文件属性

     比如我们将 root 目录下的install.log 文件复制到 tmp 目录下

    可以用于复制后文件改名,比如我们将 root 目录下的 install.log 文件复制到 tmp的copyinstall.log 文件

    7、目录处理命令:mv
    ①、命令名称:mv
    ②、英文原意:move
    ③、命令所在路径:/bin/mv
    ④、执行权限:所有用户
    ⑤、功能描述:剪切文件、改名
    ⑥、语法:mv【原文件或目录】【目标目录】

    我们在 tmp 目录下创建目录 tmp1 ,然后在 tmp1 目录下创建目录 tmp1_1,然后 命令 mv /tmp/tmp1/tmp1_1 /tmp 将 tmp1目录下的 tmp1_1 剪切到 tmp 目录下。

     

    8、目录处理命令:rm
    ①、命令名称:rm
    ②、英文原意:remove
    ③、命令所在路径:/bin/rm
    ④、执行权限:所有用户
    ⑤、功能描述:删除文件
    ⑥、语法:rm -rf 【文件或目录】

                  -r 删除目录

                  -f 强制执行

    在 tmp 目录下有两个目录 tmp1 和 tmp1_1,rm -r tmp1_1 是删除这个目录,但是需要输入 y 来确认

          rm -rf tmp1 是强制删除 tmp1 目录,不需要输入 y 来确认,这种做法很简单,但是容易误删文件,没有反悔的机会

          rm -rf tmp1 tmp2 同时删除两个文件

    文件处理命令

    1、文件处理命令:touch
    ①、命令名称:touch
    ②、英文原意:
    ③、命令所在路径:/bin/touch
    ④、执行权限:所有用户
    ⑤、功能描述:创建空文件
    ⑥、语法:touch 【文件名】

    我们在 tmp 目录下创建 tmp.log 文件

    注意:创建文件时,文件名不要有空格,不然就是创建了 两个文件

    touch progrom files   这是创建了两个文件,progrom 和 files

    如果我们想创建一个文件名为 progrom files ,应该用引号括起来(尽量避免文件名包含空格)

    touch "progrom files"

    2、文件处理命令:cat
    ①、命令名称:cat
    ②、英文原意:
    ③、命令所在路径:/bin/cat
    ④、执行权限:所有用户
    ⑤、功能描述:显示文件内容(只能用于显示文件内容较少的文件)

        -n 显示行号
    ⑥、语法:cat【文件名】

    3、文件处理命令:tac
    ①、命令名称:tac
    ②、英文原意:
    ③、命令所在路径:/bin/tac
    ④、执行权限:所有用户
    ⑤、功能描述:显示文件内容(反向显示,与 tac 命令相反)

    ⑥、语法:tac【文件名】

     

    4、文件处理命令:more(与 less 命令相反,但是不能往回翻页)
    ①、命令名称:more
    ②、英文原意:
    ③、命令所在路径:/bin/more
    ④、执行权限:所有用户
    ⑤、功能描述:分页显示文件内容
    ⑥、语法:more【文件名】
      (空格)或f 翻页(一页一页的往后显示)
      (Enter) 换行(一行一行的往后显示)
      q 或 Q 退出
     
    查看 etc目录下的 services 文件信息:more /etc/services
     
    5、文件处理命令:less(比 more 命令好用,可以往回显示)
    ①、命令名称:less
    ②、英文原意:
    ③、命令所在路径:/usr/bin/less
    ④、执行权限:所有用户
    ⑤、功能描述:分页显示文件内容(可向上翻页)
    ⑥、语法:less【文件名】
    6、文件处理命令:head(与 tail 命令相反)
    ①、命令名称:head
    ②、英文原意:
    ③、命令所在路径:/usr/bin/head
    ④、执行权限:所有用户
    ⑤、功能描述:显示文件的前面几行
          -n 指定行数
    ⑥、语法:head【文件名】
    不用 -n 默认显示前 20 行数据
    显示 etc目录下的 services 文件前面 20 行
    head -n 20 /etc/services

     

    7、文件处理命令:tail(与head 命令相反)
    ①、命令名称:tail
    ②、英文原意:
    ③、命令所在路径:/usr/bin/tail
    ④、执行权限:所有用户
    ⑤、功能描述:显示文件的后面面几行
          -n 指定行数
          -f 动态显示文件末尾内容(即文件实时变化,那么显示内容也会随之变化)
    ⑥、语法:tail【文件名】

     tail -n 18 /etc/services

    链接命令

    1、文件处理命令:ln
    ①、命令名称:ln
    ②、英文原意:link
    ③、命令所在路径:/bin/ln
    ④、执行权限:所有用户
    ⑤、功能描述:生成链接文件
    ⑥、语法:ln -s 【源文件】【目标文件】
        -s    创建软链接
        不加 -s 创建硬链接
    创建文件 /etc/issue 的软链接 /tmp/issue.soft
    ln -s /etc/issue /tmp/issue.soft
     
    创建文件 /etc/issue 的硬链接 /tmp/issue.hard
    ln  /etc/issue /tmp/issue.hard

    我们可以看到

    第一:软链接 前面是 l 开头的(link),而硬链接是 - 开头,表示文件

    第二:软链接所有者和所属组具有全部操作的权限,rwxrwxrwx;而硬链接不是。也就是软链接的前面都是 lrwxrwxrwx

    第三:软链接类似与 windows 的快捷方式,有一个明显的箭头指向,而指向的是源文件

    第四:硬链接文件除了文件名与源文件不一样,其余所有信息都是一样的。类似于 cp 复制操作。但是又和复制不一样,硬链接可以同步更新。

    第五:通过 ls -i 操作,来查看 文件的 i 节点。发现硬链接和源文件的 i 节点是相同的,而软链接与源文件的 i 节点是不同的

    第六:不允许将硬链接指向目录;不允许跨分区创建硬链接

     
     
    权限管理命令
     
     
    1、权限管理命令:chmod
    ①、命令名称:chmod
    ②、英文原意:change the permissions mode of a file
    ③、命令所在路径:/bin/chmod
    ④、执行权限:所有用户
    ⑤、功能描述:改变文件或目录权限
    ⑥、语法:chmod 【{ugoa}{+-=}{rwx}】【文件或目录】
             【mode=421】【文件或目录】
             -R 递归修改
     
    能改变文件或目录权限的用户:
    第一个是 所有者
    第二个是 root
     
    u:表示所有者
    g:表示所属组
    o:表示其他人
    a:表示所有人
     
    权限用数字表示:
    r   4
    w   2
    x  1
    那么我们可以这样:具有 rwx 权限的数字就是 7,具有 rw- 权限的数字是 6,具有 r-- 权限的数字是 4
     范例1:我们赋予 tmp 目录下的 tmp.log 所有者 x 的权限;赋予 所属组 w 权限,其他人 w 权限
    chmod u+x /tmp/tmp.log
    chmod g+w,o+w /tmp/tmp.log

    将上面例子改为用 数字来操作

    我们给 tmp.log 赋予 640 的权限,即 rw-r-----

    递归赋予权限

    给 tmp 目录下的a目录所有文件和目录赋予 776 的权限

    chmod -R 776 /tmp/a

     
     
     
    2、权限管理命令:chown
    ①、命令名称:chown
    ②、英文原意:change file ownership
    ③、命令所在路径:/bin/chown
    ④、执行权限:所有用户
    ⑤、功能描述:改变文件或目录的所有者
    ⑥、语法:chmod  【用户】【文件或目录】
     
    能更改文件或目录的所有者用户是 root
     
    改变 tmp.log 文件的所有者为 vae
    chmod vae /tmp/tmp.log
             
     
    3、权限管理命令:chgrp
    ①、命令名称:chgrp
    ②、英文原意:change file grop ownership
    ③、命令所在路径:/bin/chgrp
    ④、执行权限:所有用户
    ⑤、功能描述:改变文件或目录的所属组
    ⑥、语法:chgrp【用户组】【文件或目录】
     
    能更改文件或目录的所属组用户是 root
     
     
     
     
     
     
    文件搜索命令
    1、文件搜索命令:find 
    ①、命令名称:find
    ②、英文原意:
    ③、命令所在路径:/bin/find
    ④、执行权限:所有用户
    ⑤、功能描述:文件搜索
    ⑥、语法:find【搜索范围】【匹配条件】
     
    注意:搜索条件越精准消耗系统资源越少;不要在服务器使用高峰期进行文件搜索
    一、根据 文件或目录名 搜索
    find /etc -name init   (精准搜索,名字必须为 init 才能搜索的到)
    find /etc -name *init  (模糊搜索,以 init 结尾的文件或目录名) 
    find /etc -name init??? (模糊搜索,? 表示单个字符,即搜索到 init___) 

    二、根据文件数据块大小

    在根目录下查找大于 100 MB的文件

    find / -size +204800

    +n 表示大于,-n 表示小于,n 表示等于

    1 数据块 == 512 字节 ==0.5k

    100MB == 102400KB==204800

    三、根据所属组和所有者名称来查询

    在home目录下查询所属组为 root 的文件

    find /home -group root

    在home目录下查询所有者为 root 的文件

    find /home -user root

     
     
    2、文件搜索命令:locate
    ①、命令名称:locate
    ②、英文原意:
    ③、命令所在路径:/usr/bin/locate
    ④、执行权限:所有用户
    ⑤、功能描述:在文件资料库中查找文件
    ⑥、语法:locate 【文件名】
            -i  不区分大小写
    注意:这里和 find 命令是有区别的,find是全盘检索,而locate 是在文件资料库中进行搜索。所以新创建的文件如果不更新 文件资料库,使用 locate 是查找不到得。
        第二点:如果在 temp 目录下创建文件,使用 locate 也是查找不到的。因为 tmp 目录不在文件资料库的范围内
    updatedb  更新资料库

    locate -i locateTest   不区分大小写

     
     
    3、文件搜索命令:which
    ①、命令名称:which
    ②、英文原意:
    ③、命令所在路径:/usr/bin/which
    ④、执行权限:所有用户
    ⑤、功能描述:搜索命令所在的目录以及别名信息
    ⑥、语法:which 【命令】
     查询 ls 命令所在目录
    which ls
     
     
    4、文件搜索命令:whereis
    ①、命令名称:whereis
    ②、英文原意:
    ③、命令所在路径:/usr/bin/whereis
    ④、执行权限:所有用户
    ⑤、功能描述:搜索命令所在的目录以及帮助文档路径
    ⑥、语法:whereis【命令名称】
     查询 ls 命令所在目录以及帮助文档路径
     
     
    5、文件搜索命令:grep
    ①、命令名称:grep
    ②、英文原意:
    ③、命令所在路径:/bin/grep
    ④、执行权限:所有用户
    ⑤、功能描述:在文件中搜寻字符串匹配的行并输出
    ⑥、语法:grep -iv 【指定字符串】【文件】
          -i 不区分大小写
          -v 排除指定字符串
     范例:查找 /root/install.log 文件中包含 mysql 字符串的行,并输出
    grep mysql /root/install.log
     
     
     
     帮助命令
     
    1、帮助命令:man
    ①、命令名称:man
    ②、英文原意:manual
    ③、命令所在路径:/usr/bin/man
    ④、执行权限:所有用户
    ⑤、功能描述:获得帮助信息
    ⑥、语法:man 【命令或配置文件】
    范例:man ls 
          查看 ls 命令的帮助信息
       man services 
          查看配置文件的 services 的帮助信息,注意直接跟配置文件名就好,不能是 man /etc/services
     
    输入 /-d 可以查看与 ls -d 相关的,输入 /-l 可以查看与  ls -l 相关命令详解 
     
     
    2、帮助命令:help
    ①、命令名称:help
    ②、英文原意:
    ③、命令所在路径:shell 内置命令
    ④、执行权限:所有用户
    ⑤、功能描述:获得shell内置命令的帮助信息
    ⑥、语法:help 【命令】 
    注意:shell 内置命令即找不到 命令所在路径的
    比如 cd 命令
     
     
     
     用户管理命令
     
    1、用户管理命令:useradd
    ①、命令名称:useradd
    ②、英文原意:
    ③、命令所在路径:/usr/sbin/useradd
    ④、执行权限:root
    ⑤、功能描述:添加新用户
    ⑥、语法:useradd【用户名】
     
    2、用户管理命令:passwd
    ①、命令名称:passwd
    ②、英文原意:
    ③、命令所在路径:/usr/bin/passwd
    ④、执行权限:所有用户
    ⑤、功能描述:设置用户密码
    ⑥、语法:passwd【用户名】
    注意:普通用户只能修改自己的密码,而且密码要符合密码规则,不然修改不了
     
    3、用户管理命令:who
    ①、命令名称:who
    ②、英文原意:
    ③、命令所在路径:/usr/bin/who
    ④、执行权限:所有用户
    ⑤、功能描述:查看登录用户信息
    ⑥、语法:who
     

    第一个表示登录用户

    第二个 tty1 表示本地终端登录,pts表示远程终端

    第三个表示 登录时间

     最后面的是 远程登录 IP地址

    4、用户管理命令:w
    ①、命令名称:w
    ②、英文原意:
    ③、命令所在路径:/usr/bin/w
    ④、执行权限:所有用户
    ⑤、功能描述:查看登录用户的详细信息
    ⑥、语法:w
     
     
     
    压缩解压命令
     
    1、压缩解压命令:gzip
    ①、命令名称:gzip
    ②、英文原意:GNU zip
    ③、命令所在路径:/bin/gzip
    ④、执行权限:所有用户
    ⑤、功能描述:压缩文件
    ⑥、语法:gzip 【文件】
    注意:只能压缩文件,不能压缩目录;压缩完后不保留原文件
    压缩后文件格式为:  .gz
     
     
     
    2、压缩解压命令:gunzip
    ①、命令名称:gunzip
    ②、英文原意:GNU unzip
    ③、命令所在路径:/bin/gunzip
    ④、执行权限:所有用户
    ⑤、功能描述:解压缩.gz的压缩文件
    ⑥、语法:gunzip 【压缩文件】
    注意:解压完后不保留原文件
    压缩后文件格式为:  .gz
     
     
     
    3、压缩解压命令:tar
    ①、命令名称:tar
    ②、英文原意:
    ③、命令所在路径:/bin/tar
    ④、执行权限:所有用户
    ⑤、功能描述:打包目录
    ⑥、语法:tar 选项【-zcf】【压缩后文件名】【目录】
         -c 打包
         -v 显示详细信息
         -f  指定文件名
         -z 打包同时压缩
    压缩后文件格式: .tar.gz
    范例:tar -zcvf a.tar.gz a   将 a 目录打包并压缩生成 a.tar.gz 的压缩文件
     
    tar 命令解压缩语法
        -x 解包
        -v 显示详细信息
        -f 指定解压文件
        -z 解压缩
    tar -zxvf  a.tar.gz
     
     
     
    4、压缩解压命令:zip
    ①、命令名称:zip
    ②、英文原意:
    ③、命令所在路径:/usr/bin/zip
    ④、执行权限:所有用户
    ⑤、功能描述:压缩文件或目录
    ⑥、语法:tar 选项【-r】【压缩后文件名】【文件或目录】
          -r 压缩目录
    压缩后文件:zip
     
    5、压缩解压命令:unzip
    ①、命令名称:unzip
    ②、英文原意:
    ③、命令所在路径:/usr/bin/unzip
    ④、执行权限:所有用户
    ⑤、功能描述:解压.zip 的压缩文件
    ⑥、语法:unzip 【文件名】
     
    6、压缩解压命令:bzip2(一般用来压缩比较大的文件)
    ①、命令名称:bzip2
    ②、英文原意:
    ③、命令所在路径:/usr/bin/bzip2
    ④、执行权限:所有用户
    ⑤、功能描述:压缩文件
    ⑥、语法:bzip2 选项【-k】 【文件】
          -k  产生压缩文件后保留原文件
    压缩后文件格式: .bz2
     
     
     
    7、压缩解压命令:bunzip2
    ①、命令名称:bunzip2
    ②、英文原意:
    ③、命令所在路径:/usr/bin/bunzip2
    ④、执行权限:所有用户
    ⑤、功能描述:解压缩文件格式为 .bz2 的文件
    ⑥、语法:bunzip2 选项【-k】 【压缩文件】
          -k  解压缩文件后保留原文件
     
     
     
     
    网络命令 
     
    1、网络命令:write
    ①、命令名称:write
    ②、英文原意:
    ③、命令所在路径:/usr/bin/write
    ④、执行权限:所有用户
    ⑤、功能描述:给在线用户发送信息,Ctrl + D 结束
    ⑥、语法:write 在线用户名
      范例: write hadoop
     
    2、网络命令:ping
    ①、命令名称:ping
    ②、英文原意:
    ③、命令所在路径:/bin/ping
    ④、执行权限:所有用户
    ⑤、功能描述:测试网络连通性
    ⑥、语法:ping 选项 IP地址
            -c 指定发送次数
      范例: ping www.baidu.com
          ping -c 3 www.baidu.com
     
     
     
     
    关机和重启命令
     
    关机命令:
    1、halt   立刻关机
    2、poweroff  立刻关机
    3、shutdown -h now 立刻关机(root用户使用)
    4、shutdown -h 10 10分钟后自动关机 如果是通过shutdown命令设置关机的话,可以用shutdown -c命令取消重启
    重启命令:
    1、reboot
    2、shutdown -r now 立刻重启(root用户使用)
    3、shutdown -r 10 过10分钟自动重启(root用户使用)  
    4、shutdown -r 20:35 在时间为20:35时候重启(root用户使用) 如果是通过shutdown命令设置重启的话,可以用shutdown -c命令取消重启
     
    推荐使用 shotdown 命令,它会安全的将系统关闭
     
     
     
     
  • 相关阅读:
    CF932E Team Work(第二类斯特林数)
    BZOJ 3732: Network(Kruskal重构树)
    BZOJ 2753: [SCOI2012]滑雪与时间胶囊(最小生成树)
    BZOJ 2286: [Sdoi2011]消耗战(虚树+树形dp)
    hdu 4336 Card Collector(状压dp/Min-Max反演)
    BZOJ 3622: 已经没有什么好害怕的了(二项式反演)
    BZOJ 2839: 集合计数(二项式反演)
    CF gym 101933 K. King's Colors(二项式反演)
    BZOJ 1101: [POI2007]Zap(莫比乌斯反演)
    BZOJ 3747: [POI2015]Kinoman(线段树)
  • 原文地址:https://www.cnblogs.com/ysocean/p/Linux.html
Copyright © 2011-2022 走看看