[转]Linux常用命令大全

发布时间:2020-04-17 16:02:20编辑:文明阅读(961)

    find [PATH] [option] [action]
    
    # 与时间有关的参数:-mtime n : n为数字,意思为在n天之前的“一天内”被更改过的文件;-mtime +n : 列出在n天之前(不含n天本身)被更改过的文件名;-mtime -n : 列出在n天之内(含n天本身)被更改过的文件名;-newer file : 列出比file还要新的文件名
    # 例如:find /root -mtime 0 # 在当前目录下查找今天之内有改动的文件
    
    # 与用户或用户组名有关的参数:-user name : 列出文件所有者为name的文件-group name : 列出文件所属用户组为name的文件-uid n : 列出文件所有者为用户ID为n的文件-gid n : 列出文件所属用户组为用户组ID为n的文件
    # 例如:find /home/hadoop -user hadoop # 在目录/home/hadoop中找出所有者为hadoop的文件
    
    # 与文件权限及名称有关的参数:-name filename :找出文件名为filename的文件-size [+-]SIZE :找出比SIZE还要大(+)或小(-)的文件-tpye TYPE :查找文件的类型为TYPE的文件,TYPE的值主要有:一般文件(f)、设备文件(b、c)、
                 目录(d)、连接文件(l)、socket(s)、FIFO管道文件(p);-perm mode :查找文件权限刚好等于mode的文件,mode用数字表示,如0755;-perm -mode :查找文件权限必须要全部包括mode权限的文件,mode用数字表示-perm +mode :查找文件权限包含任一mode的权限的文件,mode用数字表示
    # 例如:find / -name passwd # 查找文件名为passwd的文件find . -perm 0755 # 查找当前目录中文件权限的0755的文件find . -size +12k # 查找当前目录中大于12KB的文件,注意c表示byte

    复制代码

    复制代码

     使用截图:

     

    2. ls 命令,展示文件夹内内容,参数如下:

    复制代码

    复制代码

    -

    复制代码

    复制代码

     使用截图:

     

    3. cd 命令:

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

     

     

    4. tree命令,显示树形的层级目录结构,非原生命令,需要安装tree

    使用示例:

     

    5. cp 命令,作用复制,参数如下:

    -a :将文件的特性一起复制-p :连同文件的属性一起复制,而非使用默认方式,与-a相似,常用于备份-i :若目标文件已经存在时,在覆盖时会先询问操作的进行-r :递归持续复制,用于目录的复制行为-u :目标文件与源文件有差异时才会复制

     编辑示例:

     

    6. rm命令作用为删除,参数:

    -f :就是force的意思,忽略不存在的文件,不会出现警告消息-i :互动模式,在删除前会询问用户是否操作-r :递归删除,最常用于目录删除,它是一个非常危险的参数

     使用示例:

     

    7. mv命令作用为移动文件:

    -f :force强制的意思,如果目标文件已经存在,不会询问而直接覆盖-i :若目标文件已经存在,就会询问是否覆盖-u :若目标文件已经存在,且比目标文件新,才会更新

     

     

    8. pwd命令,作用为查看”当前工作目录“的完整路径

    pwd -P # 显示出实际路径,而非使用连接(link)路径;pwd显示的是连接路径

    使用截图:

     

    9. tar命令,用于压缩解压:

    复制代码

    复制代码

    -c :新建打包文件
    -t :查看打包文件的内容含有哪些文件名
    -x :解打包或解压缩的功能,可以搭配-C(大写)指定解压的目录,注意-c,-t,-x不能同时出现在同一条命令中
    -j :通过bzip2的支持进行压缩/解压缩
    -z :通过gzip的支持进行压缩/解压缩
    -v :在压缩/解压缩过程中,将正在处理的文件名显示出来
    -f filename :filename为要处理的文件
    -C dir :指定压缩/解压缩的目录dir

    复制代码

    复制代码

    缩略版...

    压缩:tar -jcv -f filename.tar.bz2 要被处理的文件或目录名称
    查询:tar -jtv -f filename.tar.bz2
    解压:tar -jxv -f filename.tar.bz2 -C 欲解压缩的目录

     

    10. mkdir命令创建目录:

    mkdir [选项]... 目录... 
     -m, --mode=模式,设定权限<模式> (类似 -p, ---v, --

     

    11. rmdir 命令删除目录:

    rmdir [选项]... 目录...-p 递归删除目录dirname,当子目录删除后其父目录为空时,也一同被删除。如果整个路径被删除或者由于某种原因保留部分路径,则系统在标准输出上显示相应的信息。 
    -v --verbose  显示指令执行过程

    使用示例:

     

    12. gzip 命令压缩文件或文件夹为 .gz文件:

    复制代码

    复制代码

     gzip[参数][文件或者目录]-a or --ascii  使用ASCII文字模式。 
    -c or --stdout or --to-stdout  把压缩后的文件输出到标准输出设备,不去更动原始文件。 
    -d or --decompress or ----uncompress  解开压缩文件。 
    -f or --force  强行压缩文件。不理会文件名称 or 硬连接是否存在以及该文件是否为符号连接。 
    -h or --help  在线帮助。 
    -l or --list  列出压缩文件的相关信息。 
    -L or --license  显示版本与版权信息。 
    -n or --no-name  压缩文件时,不保存原来的文件名称及时间戳记。 
    -N or --name  压缩文件时,保存原来的文件名称及时间戳记。 
    -q or --quiet  不显示警告信息。 
    -r or --recursive  递归处理,将指定目录下的所有文件及子目录一并处理。 
    -S<压缩字尾字符串> or ----suffix<压缩字尾字符串>  更改压缩字尾字符串。 
    -t or --test  测试压缩文件是否正确无误。 
    -v or --verbose  显示指令执行过程。 
    -V or --version  显示版本信息。 
    -num 用指定的数字num调整压缩的速度,-1 or --fast表示最快压缩方法(低压缩比),-9 or --best表示最慢压缩方法(高压缩比)。系统缺省值为6。

    复制代码

    复制代码

    使用示例:

     

    二. 进程相关命令:

    13.  ps 命令显示运行的进程,还会显示进程的一些信息如pid, cpu和内存使用情况等:

    -A :所有的进程均显示出来-a :不与terminal有关的所有进程-u :有效用户的相关进程-x :一般与a参数一起使用,可列出较完整的信息-l :较长,较详细地将PID的信息列出

     使用示例:

     

    14. kill 命令用于终止进程,参数:

    复制代码

    复制代码

    kill -signal PID1:SIGHUP,启动被终止的进程2:SIGINT,相当于输入ctrl+c,中断一个程序的进行9:SIGKILL,强制中断一个进程的进行15:SIGTERM,以正常的结束进程方式来终止进程17:SIGSTOP,相当于输入ctrl+z,暂停一个进程的进行

    复制代码

    复制代码

    使用示例:

     

     

    15. killall 命令和参数:

    复制代码

    复制代码

    killall [-iIe] [command name]-i :交互式的意思,若需要删除时,会询问用户-e :表示后面接的command name要一致,但command name不能超过15个字符-I :命令名称忽略大小写
    # 例如:killall -SIGHUP syslogd # 重新启动syslogd

    复制代码

    复制代码

     使用示例:

     

    16. crontab命令是启动linux定时任务的服务

    service cron start # 启动cronjob
    service cron stop # 停止cronjob
    service cron restart #  重启cronjob
    crontab -e # 编辑cronjob任务

    使用示例:打开crontab -e后通过vi方式编辑任务列表

     

    17.  free 命令用于显示Linux系统中空闲的、已用的物理内存及swap内存,及被内核使用的buffer:

    复制代码

    复制代码

    free [参数]
    -b  以Byte为单位显示内存使用情况。 
    -k  以KB为单位显示内存使用情况。 
    -m  以MB为单位显示内存使用情况。
    -g   以GB为单位显示内存使用情况。 
    -o  不显示缓冲区调节列。 
    -s<间隔秒数>  持续观察内存使用状况。 
    -t  显示内存总和列。 
    -V  显示版本信息。

    复制代码

    复制代码

    使用示例:

     

    18. top 命令是Linux下常用的性能分析工具,能够实时显示系统中各个进程的资源占用状况,类似于Windows的任务管理器:

    复制代码

    复制代码

    top [参数]
    -b 批处理
    -c 显示完整的治命令
    -I 忽略失效过程
    -s 保密模式
    -S 累积模式
    -i<时间> 设置间隔时间
    -u<用户名> 指定用户名
    -p<进程号> 指定进程
    -n<次数> 循环显示的次数

    复制代码

    复制代码

    使用示例:

     

    三. 权限相关命令:

    19. chmod命令:

    chmod [-R] xyz 文件或目录-R:进行递归的持续更改,即连同子目录下的所有文件都会更改
    #同时,chmod还可以使用u(user)、g(group)、o(other)、a(all)和+(加入)、-(删除)、=(设置)跟rwx搭配来对文件的权限进行更改,编号是各种权限的数字代码,示例:chmod 0755 file # 把file的文件权限改变为-rxwr-xr-xchmod g+w file # 向file的文件权限中加入用户组可写权限

    使用示例:

     

     

    20. chown命令改变文件所有者:

    复制代码

    复制代码

    chown [para]... [owner][:[group]] file...

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

     -f 忽略错误信息

     -h 修复符号链接

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

     -v 显示详细的处理信息

     -deference 作用于符号链接的指向,而不是链接文件本身

    复制代码

    复制代码

     使用示例:

     

    21. chgrp命令,改变文件所属组:

    复制代码

    复制代码

    -c 当发生改变时输出调试信息-f 不显示错误信息-R 处理指定目录以及其子目录下的所有文件-v 运行时显示详细的处理信息--dereference 作用于符号链接的指向,而不是符号链接本身--no-dereference 作用于符号链接本身

    复制代码

    复制代码

    使用示例:

     

    22. useradd 命令建立用户账号:

    复制代码

    复制代码

    useradd [-mMnr][-c <备注>][-d <登入目录>][-e <有效期限>][-f <缓冲天数>][-g <群组>][-G <群组>][-s ][-u ][用户帐号] 
    
        -c #<备注>  加上备注文字。备注文字会保存在passwd的备注栏位中。 
      -d #<登入目录>  指定用户登入时的启始目录。
      -D # 变更预设值.
      -e # <有效期限>  指定帐号的有效期限。
      -f # <缓冲天数>  指定在密码过期后多少天即关闭该帐号。
      -g # <群组>  指定用户所属的群组。
      -G # <群组>  指定用户所属的附加群组。
      -m # 自动建立用户的登入目录。
      -M # 不要自动建立用户的登入目录。
      -n # 取消建立以用户名称为名的群组.
      -r # 建立系统帐号。
      -s # 指定用户登入后所使用的shell。
      -u # 指定用户ID。

    复制代码

    复制代码

    使用示例:

     

    23. usermod 修改用户信息:

    复制代码

    复制代码

    usermod -h
    usermod [options] LOGIN

     -c #后面接账号的说明,即/etc/passwd第五栏的说明栏,可以加入一些账号的说明
     -d #后面接账号的家目录,即修改/etc/passwd的第六栏
     -e #后面接日期,格式是YYYY-MM-DD也就是在/etc/shadow内的第八栏
     -f #后面接天数,修改shadow的第七栏
     -g #后面接主群组,修改/etc/passwd的第四个字段,即是GID的字段
     -G #后面接附加群组,修改这个使用者能够支持的群组,修改的是/etc/group
     -a #与 -G 合用,可增加附加群组的支持而非设定
     -l #后面接账号名称。修改账号名称,/etc/passwd的第一栏
     -s #后面接Shell的文件,例如/bin/bash或/bin/csh等等
     -u #后面接 UID 数字,修改用户的UID /etc/passwd第三栏
     -L #暂时将用户的密码冻结,让他无法登入。其实就是在/etc/shadow的密码栏前面加上了“!”
     -U #将/etc/shadow 密码栏的“!”去掉

    复制代码

    复制代码

    使用示例:

     

    24. userdel 删除用户:

    userdel [options] LOGIN-f # 强制删除,包括用户的一切相关内容,这个参数是危险的参数,不建议大家使用。详细说明看MAN-r # 删除用户的家目录和用户的邮件池

     

    25. groupadd 命令用于将新组加入系统:

    复制代码

    复制代码

    groupadd [-g gid] [-o]] [-r] [-f] groupname
    
    -g gid:指定组ID号。
    -o:允许组ID号,不必惟一。
    -r:加入组ID号,低于499系统账号。
    -f:加入已经有的组时,发展程序退出。

    复制代码

    复制代码

    使用示例:

     

    26. groupdel 命令删除组:

    # 用于删除不再需要的组,如果指定的组中包含用户,则必须先删除组里面的用户>以后,才能删除组
    groupdel [options] GROUP

    使用示例:

     

    27. sudo 用来以其他身份来执行命令,预设的身份为root:

    复制代码

    复制代码

    sudo(选项)(参数)-b:在后台执行指令;-h:显示帮助;-H:将HOME环境变量设为新身份的HOME环境变量;-k:结束密码的有效期限,也就是下次再执行sudo时便需要输入密码;。-l:列出目前用户可执行与无法执行的指令;-p:改变询问密码的提示符号;-s:执行指定的shell;-u<用户>:以指定的用户作为新的身份。若不加上此参数,则预设以root作为新的身份;-v:延长密码有效期限5分钟;-V :显示版本信息。

    复制代码

    复制代码

    使用示例:

     

    28. passwd 设置用户的密码:

    复制代码

    复制代码

    passwd [OPTION...] <accountName>
    -k, --keep-tokens       keep non-expired authentication tokens-d, --delete            delete the password for the named account (root only)-l, --lock              lock the named account (root only)-u, --unlock            unlock the named account (root only)-f, --force             force operation-x, --maximum=DAYS      maximum password lifetime (root only)-n, --minimum=DAYS      minimum password lifetime (root only)-w, --warning=DAYS      number of days warning users receives before password expiration (root only)-i, --inactive=DAYS     number of days after password expiration when an account becomes disabled (root only)-S, --status            report password status on the named account (root)

    复制代码

    复制代码

     

    29. groups 显示用户所属组:

    groups # 默认显示当前用户的组groups hadoop2 # 显示hadoop2用户的组

    使用示例:

     

    四. 文本查看编辑等命令

    30. vi/vim 是使用vi编辑器的命令:

    vi /var/log/aa.log # 打开 /var/log/aa.log文件并编辑

    使用示例:

    vi的操作命令比较复杂,就不在这里详细展开了。

     

    31. cat 用途是连接文件或标准输入并打印。这个命令常用来显示文件内容,或者将几个文件连接起来显示,或者从标准输入读取内容并显示,它常与重定向符号配合使用。 

    复制代码

    复制代码

     cat [选项] [文件]...-A, --show-all           等价于 -vET-b, --number-nonblank    对非空输出行编号-e                       等价于 -vE-E, --show-ends          在每行结束处显示 $-n, --number     对输出的所有行编号,由1开始对所有输出的行数编号-s, --squeeze-blank  有连续两行以上的空白行,就代换为一行的空白行 
    -t                       与 -vT 等价-T, --show-tabs          将跳格字符显示为 ^I-u                       (被忽略)-v, --show-nonprinting   使用 ^ 和 M- 引用,除了 LFD 和 TAB 之外

    还没有小伙伴评论,快来抢沙发啦~~!