zoukankan      html  css  js  c++  java
  • 【linux】---常用命令整理

    linux常用命令整理

    一、ls命令   

        就是list的缩写,通过ls 命令不仅可以查看linux文件夹包含的文件,而且可以查看文件权限(包括目录、文件夹、文件权限)�查看目录信息等等

             常用参数搭配:

             ls -a 列出目录所有文件,包含以.开始的隐藏文件

             ls -A 列出除.及..的其它文件

             ls -r 反序排列

             ls -t 以文件修改时间排序

             ls -S 以文件大小排序

             ls -l 除了文件名之外,还将文件的权限、所有者、文件大小等信息详细列出来(可以直接写成 ll)

    实例:    

    ll name*      #列出当前目录中所有以“name”开头的目录的详细内容

    二、cd命令

    cd /root/Docements      # 切换到目录/root/Docements  
    cd ./path               # 切换到当前目录下的path目录中,“.”表示当前目录    
    cd ../path              # 切换到上层目录中的path目录中,“..”表示上一层目录  

    三、rm命令

    -f : #就是force的意思,忽略不存在的文件,不会出现警告消息  
    -i : #互动模式,在删除前会询问用户是否操作  
    -r : #递归删除,最常用于目录删除,它是一个非常危险的参数  
    
    #举例
    rm -i file # 删除文件file,在删除之前会询问是否进行该操作  
    rm -fr dir # 强制删除目录dir中的所有文件  

    四、cp命令

    1. -a :将文件的特性一起复制  
    2. -p :连同文件的属性一起复制,而非使用默认方式,与-a相似,常用于备份  
    3. -r :递归持续复制,用于目录的复制行为   
    cp /home/Test.java             #将home路径下的Test.java文件复制到当前目录下
    cp -r dir1 dir2                #-r表示递归,将dir1代表的文件夹及里面的文件复制到dir2路径那里
    cp -r mysql /usr/local/mysql   #把mysql文件夹所有文件复制到/usr/local/mysql目录下,没有会自动创建目录 
    cp file1 file2 file3 dir  #把文件file1、file2、file3复制到目录dir中 

    五、mv命令

       移动文件或修改文件名,根据第二参数类型(如目录,则移动文件;如为文件则重命令该文件)。

    1. -f :force强制的意思,如果目标文件已经存在,不会询问而直接覆盖  
    2. -i :若目标文件已经存在,就会询问是否覆盖  
    3. -u :若目标文件已经存在,且比目标文件新,才会更新  
    mv file1 file2 file3 dir  # 把文件file1、file2、file3移动到目录dir中  
    mv file1 file2            # 把文件file1重命名为file2  

    六、mkdir命令

          -m --mode=模式,设定权限<模式> (类似 chmod),而不是 rwxrwxrwx 减 umask

      -p --parents 递归创建目录

      -v, --verbose 每次创建新目录都显示信息

    mkdir abc              #创建一个空目录
    mkdir -p test/test1    #递归创建多个目录
    mkdir -v hao           #创建新目录都显示信息
    mkdir -m 777 pc        #创建权限为777的目录

    7、pwd命令

    pwd        #查看当前路径
    pwd -P    #查看软链接的实际路径

    8、find命令    

     -name 按照文件名查找文件
    
     -perm 按文件权限查找文件
    
     -user 按文件属主查找文件
    
     -group  按照文件所属的组来查找文件。
    
     -amin n   查找系统中最后N分钟访问的文件
    
     -atime n  查找系统中最后n*24小时访问的文件
    
     -mmin n   查找系统中最后N分钟被改变文件数据的文件
    
     -mtime n  查找系统中最后n*24小时被改变文件数据的文件
     find ./ -name '*.log'    # 在当前目录查找 以.log结尾的文件。 ". "代表当前目录
    
     find /opt -perm 777      #查找/opt目录下 权限为 777的文件
    
     -xargs                   #find命令把匹配到的文件传递给xargs命令,而xargs命令每次只获取一部分文件而不是全部,不像-exec选项那样。这样它可以先处理最先获取的一部分文件,然后是下一批,并如此继续下去。
    
    find / -name mysql|xargs rm -rf   #找到所有文件名为mysql文件,并全部删除。

    9、tar命令

    只能使用下面的某一个选项来指定tar要执行的动作。可以通过在选项后面跟一个或多个修饰符来改变该选项的行为

        -c            创建归档文件

        -u            将file-list中的文件添加到归档文件

        -x            从归档文件中提取file-list并把它写入磁盘

    修饰符

    -f filename              使用filename来指出要创建或从中提取的归档文件的文件名

    -j                             在创建归档文件或从归档文件中提取文件时,使用bzip2方式来进行压缩和解压缩

    -z                            在创建归档文件或从归档文件中提取文件时,使用gzip方式来进行压缩和解压缩

    -v                            显示所有过程

    -t                             列出归档文件中的目录

    tar -cvf demo.tar a b c       #将a b c打包成一个名为demo.tar的归档文件,并显示打包的文件
    tar -xvf demo.tar             #解压名为demo.tar的归档文件到本目录,并显示解压的文件
    tar -zcvf demo.tar.gz a b c   #将a b c 三文件用gzip的方式打包并压缩成demo.tar.gz
    tar -zxvf demo.tar.gz         #用gunzip的的方式解压demo.tar.gz文件
    tar -jcvf demo.tar.bz2 a b c  #将a b c三文件用bzip2的方式压缩并打包为demo.tar.bz2
    tar -jxvf demo.tar.bz2        #将demo.tar.bz2用bunzip2的方式解压缩到当前目录
    tar -cvf jpg.tar *.jpg #将目录里所有jpg文件打包成tar.jpg

    10、ps命令

      ps(process status),用来查看当前运行的进程状态,一次性查看,如果需要动态连续结果使用top

             linux上进程有5种状态:

             1. 运行(正在运行或在运行队列中等待)

             2. 中断(休眠中, 受阻, 在等待某个条件的形成或接受到信号)

             3. 不可中断(收到信号不唤醒和不可运行, 进程必须等待直到有中断发生)

             4. 僵死(进程已终止, 但进程描述符存在, 直到父进程调用wait4()系统调用后释放)

             5. 停止(进程收到SIGSTOP, SIGSTP, SIGTIN, SIGTOU信号后停止运行运行)

             命令参数:

             -A 显示所有进程

             a 显示所有进程

            - e 显示环境变量

            - f 显示进程间的关系

             r 显示当前终端运行的进程

             -aux 显示所有包含其它使用的进程

    ps -A                #显示所有进程信息
    ps -u root           #显示指定用户信息
    ps -ef               # 显示所有进程信息,连同命令行
    ps -ef |grep java    #显示java 进程是否存在
      #grep命令是查找,中间的|是管道命令 是指ps命令与grep同时执行
    ps -aux |grep java   #显示java 进程是否存在
      #上面两个其实没有多大区别只是:aux可以查看进程的CPU占用率和内存占用率。ef可以查看进程的父进程ID和完整的COMMAND命令

    11、top命令

           top显示系统当前的进程和其他状况,是一个动态显示过程,显示当前系统正在执行的进程的相关信息,包括进程ID、内存占用率、CPU占用率等

      常用参数:

             -c 显示完整的进程命令

             -s 保密模式

             -p <进程号> 指定进程显示

             -n <次数>循环显示次数

       -d 指定每两次屏幕信息刷新之间的时间间隔。 
    top       #每隔5秒显式所有进程的资源占用情况(默认是5秒)
    top -d 2  #每隔2秒显式所有进程的资源占用情况
    top -c    #每隔5秒显式进程的资源占用情况,并显示进程的命令行参数(默认只有进程名)
    top -p 12345 -p 6789   #每隔5秒显示pid是12345和pid是6789的两个进程的资源占用情况
    top -d 2 -c -p 123456  #每隔2秒显示pid是12345的进程的资源使用情况,并显式该进程启动的命令行参数

    12、kill命令

          发送指定的信号到相应进程。

       常见参数

            HUP    1    终端断线

            INT     2    中断(同 Ctrl + C)

          QUIT    3    退出(同 Ctrl + )

        TERM   15    终止

           KILL    9    强制终止

        CONT   18    继续(与STOP相反, fg/bg命令)

        STOP    19    暂停(同 Ctrl + Z)

     kill -15 pid    #让进程正常退出 。 既然信号 15 是退出进程的正确方式,那它也应该是最常用的方式,因而我们可以省略参数 -15。
     kill -9 pid     #当进程出现了异常状况,不能通过信号15正常退出时,我们就需要通过非常的手段直接终结掉进程。所谓的非常手段就是传递信号 9 给目标进程!
     kill -15 $(ps -ef | grep peidalinux)   #杀死指定进程
    #不是特殊情况,建议有15就可以了,慎用9哦

    13、chmod命令

        用于改变linux系统文件或目录的访问权限。用它控制文件或目录的访问权限。该命令有两种用法。一种是包含字母和操作符表达式的文字设定法;另一种是包含数字的数字设定法。  

       常用参数:

             -c 当发生改变时,报告处理信息

             -R 处理指定目录以及其子目录下所有文件

       权限范围

             u :目录或者文件的当前的用户

             g :目录或者文件的当前的群组

             o :除了目录或者文件的当前用户或群组之外的用户或者群组

             a :所有的用户及群组

     三种基本权限

       R           读          数值表示为4

       W          写          数值表示为2

       X           可执行   数值表示为1

     如图所示,dump.rdb文件的权限为-rw-r--r--

      -rw-r--r--一共十个字符,分成四段。

      第一个字符“-”表示普通文件;这个位置还可能会出现“l”链接;“d”表示目录

      第二三四个字符“rw-”表示当前所属用户的权限。   所以用数值表示为4+2=6

      第五六七个字符“r--”表示当前所属组的权限。       所以用数值表示为4

      第八九十个字符“r--”表示其他用户权限。              所以用数值表示为4

      所以操作此文件的权限用数值表示为644 

     更改权限

    sudo chmod [u所属用户  g所属组  o其他用户  a所有用户]  [+增加权限  -减少权限]  [r  w  x]   目录名 

    例如:有一个文件filename,权限为“-rw-r----x” ,将权限值改为"-rwxrw-r-x",用数值表示为765

    sudo chmod u+x g+w o+r  filename

    上面的例子可以用数值表示

    sudo chmod 765 filename

    14、grep命令

       强大的文本搜索命令,grep(Global Regular Expression Print)全局正则表达式搜索

       grep太强大了,我这里就举几个常见的。

    ps -ef|grep svn                  #查找指定进程
    grep -n 'li' nginx.conf          #在nginx.conf查找包含"li"的行,同时显示行号
    grep 'linux' test.txt test2.txt  #从多个文件中查找关键词

     

     15、vim命令

        vim三种模式:命令模式、插入模式、编辑模式使用ESC或i或:来切换模式

      命令模式下:

                   :q                      退出

                  :q!                     强制退出

                 :wq                   保存并退出

                 :set number     显示行号

                 :set nonumber  隐藏行号

                  /apache            在文档中查找apache 按n跳到下一个,shift+n上一个

                   yyp                   复制光标所在行,并粘贴

                  h(左移一个字符←)、j(下一行↓)、k(上一行↑)、l(右移一个字符→)

    16、cat命令

        cat主要有三大功能:

               1.一次显示整个文件:cat filename

               2.从键盘创建一个文件:cat > filename 只能创建新文件,不能编辑已有文件.

               3.将几个文件合并为一个文件:cat file1 file2 > file

              -b对非空输出行号

              -n输出所有行号

    cat -n nginx.conf                        #查看文件并显示行号
    cat -n log2012.log log2013.log           #把 log2012.log 的文件内容加上行号后输入 log2013.log 这个文件里
     cat -b log2012.log log2013.log log.log  #把 log2012.log 和 log2013.log 的文件内容加上行号(空白行不加)之后将内容附加到 log.log 里

    17、more命令

      功能类似于cat, more会以一页一页的显示方便使用者逐页阅读,而最基本的指令就是按空白键(space)就往下一页显示,按 b 键就会往回(back)一页显示

      命令参数

             +n      从笫n行开始显示

             -n       定义屏幕大小为n行

             +/pattern 在每个档案显示前搜寻该字串(pattern),然后从该字串前两行之后开始显示 

             -c       从顶部清屏,然后显示

             -d       提示“Press space to continue,’q’ to quit(按空格键继续,按q键退出)”,禁用响铃功能

             -l        忽略Ctrl+l(换页)字符

             -s       把连续的多个空行显示为一行

         常用操作命令

             Enter    向下n行,需要定义。默认为1行

             空格键  向下滚动一屏

             Ctrl+B  返回上一屏

             =       输出当前行的行号

             V      调用vi编辑器

             !命令   调用Shell,并执行命令

             q       退出more

    ls -l | more -5   #在所列出文件目录详细信息,借助管道使每次显示5行 按空格键显示下五行,enter向下1行。具体看上面参数。
    more +3 text.txt #显示文件中从第3行起的内容

    18、less命令

        less 与 more 类似,但使用 less 可以随意浏览文件,而 more 仅能向前移动,却不能向后移动,而且 less 在查看之前不会加载整个文件。

    19、tail命令

       用于显示指定文件末尾内容,不指定文件时,作为输入信息进行处理。常用查看日志文件。

             常用参数:

             -f 循环读取(常用于查看递增的日志文件)

             -n<行数> 显示行数(从后向前)

      tail -f ping.log  #循环读取逐渐增加的文件内容

            这个可以用来看正式服报错日志

    20、chown命令

      chown将指定文件的拥有者改为指定的用户或组,用户可以是用户名或者用户ID;组可以是组名或者组ID;文件是以空格分开的要改变权限的文件列表,支持通配符

             -c 显示更改的部分的信息

             -R 处理指定目录及子目录

     chown mail:mail log2012.log   #改变拥有者和群组

    chown root: log2012.log      #改变文件拥有者和群组
    chown :mail log2012.log      #改变文件群组
    chown -R -v root:mail test6  #改变指定目录以及其子目录下的所有文件的拥有者和群组

     参考

        1.linux常用命令

        2.grep命令详解

        3.chown命令详解

        4.top命令详解

        5.tar命令详解

        6.ps命令详解

    想的太多,做的太少,中间的落差就是烦恼,要么去做,要么别想 中尉【12】
  • 相关阅读:
    关于lockkeyword
    关于多层for循环迭代的效率优化问题
    Android 面试精华题目总结
    Linux基础回想(1)——Linux系统概述
    linux源代码编译安装OpenCV
    校赛热身 Problem C. Sometimes Naive (状压dp)
    校赛热身 Problem C. Sometimes Naive (状压dp)
    校赛热身 Problem B. Matrix Fast Power
    校赛热身 Problem B. Matrix Fast Power
    集合的划分(递推)
  • 原文地址:https://www.cnblogs.com/qdhxhz/p/8921654.html
Copyright © 2011-2022 走看看