zoukankan      html  css  js  c++  java
  • Linux(CentOS7)常用命令详解

    在详解常用命令之前,先对Linux的树型目录结构做个简单的了解,如下所示:

    简单说明:

    /      #根目录
    /bin   #基础系统所需要的命令位于此目录,是最小系统所需要的命令,如:ls, cp, cd等等。这个目录中的文件都是可执行的,一般的用户都可以使用。
    /dev   #设备文件,比如声卡、磁盘、鼠标、键盘等。
    /etc  #系统管理和配置文件
    /etc/init.d   #启动配置文件和脚本,可在这里添加启动脚本。
    /etc/rc.local   #用户添加启动项
    /home  #用户主目录,比如用户user的主目录就是/home/user,可以用~user表示
    /lib   #标准程序设计库存放路径,又叫动态链接共享库,作用类似windows里的.dll文件
    /sbin  #超级管理命令,这里存放的是系统管理员使用的管理程序。
    /tmp   #临时文件目录,有时用户运行程序的时候,会产生临时文件。 /tmp就用来存放临时文件的。
    /root  #系统管理员的主目录
    /mnt   #用来临时挂载其他的文件系统
    /lost+found   #这个目录平时是空的,系统意外崩溃或机器意外关机,而产生一些文件碎片放在这里。当系统启动的过程中fsck工具会检查这里,并修复已经损坏的文件系统。
    /media      #即插即用型存储设备的挂载点自动在这个目录下创建,比如USB盘系统自动挂载后,会在这个目录下产生一个目录 
    /proc  #虚拟文件目录,可直接访问这个目录来获取系统信息。
    /var   #所有服务的登录文件或错误讯息档案(log files)都在 /var/log 里面
    /boot  #包含Linux内核及系统引导程序所需要的文件,比如 vmlinuz initrd.img 文件都位于这个目录中。在一 般情况下,GRUB或LILO系统引导管理器也位于这个目录;
    /usr   #最庞大的目录,要用到的应用程序和文件几乎都在这个目录,其中包含:
      usr/bin     #众多的应用程序
      /usr/sbin     #超级用户的一些管理程序
      /usr/include  #Linux下开发和编译应用程序所需要的头文件
      /usr/lib     #常用的动态链接库
      /usr/share/man  #帮助文档
      /usr/src     #源代码,Linux内核的源代码就放在/usr/src/Linux里
      /usr/local/bin  #本地增加的命令
      /usr/local/lib  #本地增加的库根文件系统
    . :代表当前路径
    
    .. :代表上一级目录
    
    ~ :代表用户目录路径

    二.常用命令详解
    2.1 ls 命令

    ls是英文单词list的缩写.用来查看文件目录的属性。
    
    例如直接输入ls按回车,查看根目录的文件以及目录。

    2.1.1 ls -l命令

    ls -­l  l参数代表以列表的方式显示。
    
      #第一个字符d 代表这是一个目录文件。
      # ‐  代表普通文件
      # c  字符设备文件
      # b  块设备文件
      # p  管道文件
      # l  链接文件
      # s  socket文件
    #后面的rwxr‐xr‐x字符,代表user、group、other对文件所拥有的权限,rwx代表该用户拥有读写执行的权限。r‐x
    代表同一组的用户拥有的读和执行权限,后一个r‐x代表其他用户拥有读和执行权限。
    # 2代表文件硬链接的计数,表示该文件有两个硬链接。
    # where 文件所属的用户名。
    # where  文件所属的用户组。
    # 4096 文件大小,单位字节。
    # 6月 25 16:53  文件最后被修改的日期。
    # Videos 文件名

    2.1.2 ls -a命令

    ls -a ­a参数代表all的意思,表示把所有的文件都罗列出来,包括隐藏文件,点号开头的在Linux中都表示隐藏文件。
     
    
     ls ‐ld [filename] 代表只列出目录文件的属性。

    2.2 stat命令 

    查看文件的访问时间,修改时间等
    访问时间,是指通过指令如cat、vi等来查看的文件的最近一次时间。更改时间,是指修改文件内容的最近一次时间。
    改动时间,是指修改文件属性的最近一次时间。
    注意:访问时间是内容更改后,第一次访问的时间,后面再次访问的时候访问时间不会改变

    2.3 cd命令

    cd 是 change directory的缩写,表示改变当前所在路径。

    2.4 pwd命令

    pwd 是英文print working directory 显示当前所在路径。

    2.5 which命令

    寻找可执行文件 ,并在PATH环境变量里面寻找

    2.6 touch命令 

    将每个文件的访问及修改时间都更新为目前的时间。
    
    如果文件不存在,则创建一个字节数为0的文件。
    
    ‐a           #只更新访问时间,不改变修改时间
    ‐c           #不创建不存在的文件
    ‐m           #只更新修改时间,不改变访问时间
    ‐r file      #使用文件file的时间更新文件的时间
    ‐t           #将时间修改为参数指定的日期,如:07081556代表7月8号15点56分

    2.7 mkdir 命令

    mkdir 是make directory的英文缩写。
    创建目录DIRECTORY,可以一次创建多个。OPTION如果是­p,表示可以连同父目录一起创建。

    2.8 rmdir 命令 

    rmdir是remove directory的英文缩写。
    删除空目录,可以一次删除多个。OPTION如果是­p,表示可以连同空的父目录一起删除。但是一旦父目录中还包含其他文件,则删除失败。

    2.9 rm 命令 

    rm是remove的英文缩写。
    可以用来删除普通文件,也可以用来删除目录,特别用来删除目录中嵌套有子目录的目录文件。
    常用参数:
    
    ‐f  ‐‐force  #强制删除,不询问是否要删除。
    ‐r  ‐‐recursive  #递归删除,包括文件夹中的内容。

    2.10 mv命令

    mv是英文单词move的缩写。可以用来移动文件夹或者文件,也可以用来更改文件名。
    mv file / #把文件file移动到根目录中
    
    mv file file_bak #把文件file重命名为file_bak。

    2.11 cp命令

    cp是英文单词copy的缩写,表示拷贝文件。
    
    可以用来拷贝普通文件:
    cp file file_bak #拷贝一份file为file_bak
    
    可以用来拷贝目录
    cp dir dir_bak ‐r #拷贝一个目录dir为dir_bak, ‐r参数代表递归拷贝,把dir目录中的文件也拷贝过去

    2.12 cat命令

    cat英文单词concatenate连锁的缩写,用来查看文件内容,以及将几个文件连成一个文件,
    不填文件参数,默认的情况下是从标准输入中获取内容: 
    
    查看文件: cat fileName
    
    将文件file1 file2连成file3文件
    cat file1 file2 > file3

    2.13 more命令 

    more 是我们最常用的工具之一,最常用的就是显示输出的内容,然后根据窗口的大小进行分页显示,并且提示文件的百分比。
    参数如下:
    
    +num    #从第num行开始显示;
    ‐num    #定义每屏显示num行;
    
    打开之后的动作:

    2.14 less命令

    less工具也是对文件或其它输出进行分页显示的工具
    
    参数如下:
    
    ‐f    #强制打开文件,二进制文件显示时,不提示警告;
    ‐N    #在每行前输出行号;
    
    打开之后的动作:

    2.15 locate 命令 

    全盘寻找文件,文件名部分匹配,只要有包含该字符串的都罗列出来,这个指令查找速度很快,它需要一个数据库,这个数据库由每天的例行工作(crontab)程序来更新。当我们建立好这个数据库后,就可以方便地来搜寻
    所需文件了。
    
    马上创建的文件没办法使用locate查找到:如果想马上更新可以使用一下指令:updatedb

    2.16 find 命令

    直接在全文件系统上搜寻,功能强大,速度慢。
    
    格式:
    
    find [path] [‐option] [ ‐print ‐exec ‐ok command ] {} ;
    
    path:   #要执行查找的目录。
    ‐option: #查找的具体方法。
    ‐print: #find命令将匹配的文件输出到标准输出。
    ‐exec:  #find命令对匹配的文件执行该参数所给出的shell命令。相应命令的形式为'command' {} ;,注意{}和
    ;之间的空格。
    ‐ok:    #和‐exec的作用相同,只不过以一种更为安全的模式来执行该参数所给出的shell命令,在执行每一个命令
    之前,都会给出提示,让用户来确定是否执行。
    
    find / ‐name filename   #在根目录里面搜索文件名为filename的文件
    find /etc ‐name *s*     #在目录里面搜索带有s的文件
    find /etc ‐name *S      #在目录里面搜索以s结尾的文件
    find /etc ‐name s*      #在目录里面搜索以s开头的文件
    find / ‐amin ‐10        #在系统中搜索最后10分钟访问的文件
    find / ‐atime ‐2        #查找在系统中最后48小时访问的文件
    find / ‐mmin ‐5         #查找在系统中最后5分钟修改过的文件
    find / ‐mtime ‐1        #查找在系统中最后24小时修改过的文件
    find / ‐ctime ‐1        #查找在系统中最后24小时被改变状态的文件
    find / ‐user username   #查找在系统中属于用户username的文件
    find / ‐group groupname  #groupname 查找在系统中属于groupname的文件
    find / ‐empty           #查找在系统中为空的文件或者是文件夹
    find / ‐inum 3          #查找inode号为3的文件
    find / ‐type d          #查找为文件类型为文件夹的文件d为文件夹
                                    f     #普通文件
                                    d     #目录文件
                                    l     #链接文件
                                    b     #块设备文件
                                    c     #字符设备文件
                                    p     #管道文件
                                    s     #socket文件

    2.17 grep 命令

    搜索内容中是否包含指定的字符串,并打印出该行。
    
    常用参数有:
    
    ‐i    ‐‐ignore‐case   #忽略字符大小写的差别。
        ‐v                    #输出没有指定字符串的文件
        ‐c                    #只输出匹配行的计数。
        ‐R                    #连同子目录中所有文件一起查找。

    2.18 ln命令

    ln是英文单词link的缩写,用来创建链接的命令。
       Linux链接分两种,一种被称为硬链接(Hard Link),另一种被称为符号链接(Symbolic Link)。默认情况下,ln命令产生硬链接。
    【硬链接】
       硬链接指通过索引节点来进行链接。在Linux的文件系统中,保存在磁盘分区中的文件不管是什么类型都给它分配一个编号,称为索引节点号(Inode Index)。在Linux中,多个文件名指向同一索引节点,一般这种链接就是硬链接。
    
       硬链接的作用是允许一个文件拥有多个有效路径名,这样用户就可以建立硬链接到重要文件,以防止“误删”。
       如果有多个硬链接,只删除一个链接并不影响本身和其它的链接,只有当最后一个链接被删除后,文件的才会被正在删除。也就是说,文件真正删除的条件是与之相关的所有硬链接文件均被删除。
    【软链接】
       另外一种链接称之为符号链接(Symbolic Link),也叫软链接。软链接文件有类似于Windows的快捷方式。它实际上是一个特殊的文件。符号链接文件实际上是一个文本文件,其中包含的有另一文件的位置信息。
    
    给flie文件创建一个硬链接
    touch file
    ln file file_hard
    
    给file文件创建一个软链接
    touch file
    ln ‐s file flie_soft
    
    注意: 软链接的时候尽量使用绝对路径,避免由于链接文件移动后,造成文件失效。

    2.19 wc 命令

    Linux系统中的wc为英文Word Count的缩写,命令的功能为统计指定文件中的字节数、字数、行数,并将统计结果显示输出。 
    
    命令功能:
    统计指定文件中的字节数、字数、行数,并将统计结果显示输出。如果没有给出文件名,则从标准输入读取。wc同时也给出所指定文件的总统计数。
    
    命令参数:
    ‐c #统计字节数。 
    ‐l #统计行数。 
    ‐m #统计字符数。这个标志不能与 ‐c 标志一起使用。 
    ‐w #统计字数。一个字被定义为由空白、跳格或换行字符分隔的字符串。 
    ‐L #打印最长行的长度。 

    2.20 od命令 

    od是英文octal dump的缩写,功能是把文件用8进制或者其他的格式显示出来,通常用于查看特殊格式文件的内容,可以用来查看不可见字符。
    
    2.21 du命令
    du是英文Disk usage的缩写,表示计算某个目录在硬盘中所占的空间大小,默认情况下以kb为单位。通过递归统计每一个目录中所占用的空间大小。
    
    常用参数如下:

    2.22 df命令

    df是英文Disk free的缩写,用来统计磁盘是使用情况。

    2.23 gedit命令 

    gedit全称 GNU edit 是一个文本编辑器,类似windows里面的txt文本编辑器。编辑file文本。

    2.24 管道命令

    用法: command 1 | command 2 他的功能是把第一个命令command 1执行的结果作为command 2的输入。管道命令操作符是:”|”它只能处理经由前面一个指令传出的正确输出信息,对错误信息信息没有直接处理能力.

    2.25 重定向 

    在shell中,标准输入是0,标准输出是1,标准错误是2.
    使用>表示重定向。1>表示标准输出重定向,2>表示标准错误重定向。默认情况下>表示输出重定向。
    
    例如:
    
    ls > list.txt   #ls的输出重定向到文件list.txt中。                     
    find / ‐name "*.c" 2>/dev/null  #标准错误重定向到无底洞文件。     
    find / ‐name "*.c" 2>/dev/null  #标准错误重定向到无底洞文件。     
    find / ‐name "*.c" >/dev/null 2>&1  #标准输出、标准错误重定向到无底洞文件。

    2.26 后台运行

    Linux中可以使用&,让程序在后台运行。如:cat &

    2.27 awk命令

    awk就是把文件逐行的读入,以空格为默认分隔符将每行切片,切开的部分再进行各种分析处理。
    
    格式:awk [‐F field‐separator] 'commands' [input‐file(s)]
    
    其中,commands 是真正awk命令,[­F 域分隔符]是可选的。 input­file(s) 是待处理的文件。
    print 是awk打印指定内容的主要命令, $1 分割出来的第一段,$2分割出来的第二段,依次类推,$0代表所有
    字段例如:
    
    ls ‐l | awk '{print $1 "	" $2 "	" $3 "	" $4}'/proc/meminfo文件中的字段提取出来,并且在每个字段前面添加meminfo:
    
    awk ‐F ':' '{print "meminfo:" $1}' /proc/meminfo


    原文链接:https://blog.csdn.net/weixin_39951988/java/article/details/87613816

  • 相关阅读:
    oracle常用命令
    批量导出docker镜像
    python中的xpath
    __call__, __str__
    闭包
    ORM操作
    nginx跨域请求
    docker-compose命令
    nginx 之 websocket长连接
    nginx--proxy_set_header
  • 原文地址:https://www.cnblogs.com/yangfei123/p/12758414.html
Copyright © 2011-2022 走看看