Linux常用命令大全(比较详细)
https://blog.csdn.net/tianzongnihao/article/details/80539264

一、基础命令

  1. find 基本语法参数如下:
    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
使用截图:

  1. ls 命令,展示文件夹内内容,参数如下:
    -a :全部的档案,连同隐藏档( 开头为 . 的档案) 一起列出来~
    -A :全部的档案,连同隐藏档,但不包括 . 与 … 这两个目录,一起列出来~
    -d :仅列出目录本身,而不是列出目录内的档案数据
    -f :直接列出结果,而不进行排序 (ls 预设会以档名排序!)
    -F :根据档案、目录等信息,给予附加数据结构,例如:
    *:代表可执行档; /:代表目录; =:代表 socket 档案; |:代表 FIFO 档案;
    -h :将档案容量以人类较易读的方式(例如 GB, KB 等等)列出来;
    -i :列出 inode 位置,而非列出档案属性;
    -l :长数据串行出,包含档案的属性等等数据;
    -n :列出 UID 与 GID 而非使用者与群组的名称 (UID与GID会在账号管理提到!)
    -r :将排序结果反向输出,例如:原本档名由小到大,反向则为由大到小;
    -R :连同子目录内容一起列出来;
    -S :以档案容量大小排序!
    -t :依时间排序
    –color=never :不要依据档案特性给予颜色显示;
    –color=always :显示颜色
    –color=auto :让系统自行依据设定来判断是否给予颜色
    –full-time :以完整时间模式 (包含年、月、日、时、分) 输出
    –time={atime,ctime} :输出 access 时间或 改变权限属性时间 (ctime)
    而非内容变更时间 (modification time)

例如:
ls [-aAdfFhilRS] 目录名称
ls [–color={none,auto,always}] 目录名称
ls [–full-time] 目录名称
使用截图:

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

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

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

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

  5. pwd命令,作用为查看”当前工作目录“的完整路径
    pwd -P # 显示出实际路径,而非使用连接(link)路径;pwd显示的是连接路径
    使用截图:

  6. 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 欲解压缩的目录
    tar jcvf hhh.tar hello //将hello目录备份压缩到hhh文件下
    tar jxvf hhh.tar -C test3 //将hhh压缩文件 压缩到test3目录下

  7. mkdir命令创建目录:
    mkdir [选项]… 目录…
    -m, --mode=模式,设定权限<模式> (类似 chmod),而不是 rwxrwxrwx 减 umask
    -p, --parents 可以是一个路径名称。此时若路径中的某些目录尚不存在,加上此选项后,系统将自动建立好那些尚不存在的目录,即一次可以建立多个目录;
    -v, --verbose 每次创建新目录都显示信息

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

  9. 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  列出压缩文件的相关信息。
    目录
    二. 进程相关命令: 7
    三. 权限相关命令: 9
    四. 文本查看编辑等命令 14
    五. 搜索文件: 25
    六. 其他: 27

-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。
使用示例:

二. 进程相关命令:
12. ps 命令显示运行的进程,还会显示进程的一些信息如pid, cpu和内存使用情况等:
-A :所有的进程均显示出来
-a :不与terminal有关的所有进程
-u :有效用户的相关进程
-x :一般与a参数一起使用,可列出较完整的信息
-l :较长,较详细地将PID的信息列出
使用示例:

  1. kill 命令用于终止进程,参数:
    kill -signal PID

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

  1. top 命令是Linux下常用的性能分析工具,能够实时显示系统中各个进程的资源占用状况,类似于Windows的任务管理器:
    top [参数]
    -b 批处理
    -c 显示完整的治命令
    -I 忽略失效过程
    -s 保密模式
    -S 累积模式
    -i<时间> 设置间隔时间
    -u<用户名> 指定用户名
    -p<进程号> 指定进程
    -n<次数> 循环显示的次数
    使用示例:

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

  1. chown命令改变文件所有者:
    chown [para]… [owner][:[group]] file…
    -c 显示更改的部分的信息
     -f 忽略错误信息
     -h 修复符号链接
     -R 处理指定目录以及其子目录下的所有文件
     -v 显示详细的处理信息
     -deference 作用于符号链接的指向,而不是链接文件本身
    使用示例:

  2. 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。
    使用示例:

  3. 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 密码栏的“!”去掉
    使用示例:

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

  5. groupadd 命令用于将新组加入系统:
    groupadd [-g gid] [-o]] [-r] [-f] groupname

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

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

  2. sudo 用来以其他身份来执行命令,预设的身份为root:
    sudo(选项)(参数)

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

  1. passwd 设置用户的密码:
    passwd [OPTION…]
    -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)

  2. groups 显示用户所属组:
    groups # 默认显示当前用户的组

groups hadoop2 # 显示hadoop2用户的组
使用示例:

四. 文本查看编辑等命令
25. vi/vim 是使用vi编辑器的命令:
vi /var/log/aa.log # 打开 /var/log/aa.log文件并编辑
使用示例:

基本上 vi/vim 共分为三种模式,分别是命令模式(Command mode),输入模式(Insert mode)和底线命令模式(Last line mode)。
(1)命令模式
x,X x为向后删除一个字符,X为先前删除一个字符
nx(n代表数字) 向后删除n个字符
dd 删除当前行
D 删除当前行所有字符,试成为空行
ndd(n代表数字) 删除光标所在行的向下n列
d1G 删除光标所在行到第一行的所有数据
dG 删除光标所在行到最后一行的所有数据
yy 复制光标所在行
y1G 复制光标所在行到第一行的所有数据
yG 复制光标所在行到最后一行的所有数据
ynj(n代表数字) 复制光标所在行向下n+1行
dnj(n代表数字) 删除光标所在行向下n+1行
p,P p为复制的数据粘贴在光标的下一行,P为复制的数据粘贴在光标的上一行
J 将光标所在行与下一行的数据结合成一行
u 恢复前一个动作(undo)
h 光标向左移一个字符
j 光标向下移一个字符
k 光标向上移一个字符
l 光标向右移一个字符
Ctrl+f 屏幕向下翻一页
Ctrl+b 屏幕向上翻一页
Ctrl+d 屏幕向下翻半页
Ctrl+u 屏幕向上翻半页

  •                        光标移动到下一行的第一个非空字符
    
  •                        光标移动到当前行的第一个非空字符
    

n空格(n代表数字) 光标向当前行向右移动n个字符
0(数字0) 光标移动到当前行的第一个字符(可以为空字符,注意与-区分)
$ 光标移动到当前行的最后一个字符(可以为空字符,注意与-区分)
H 光标移动到当前屏幕最上方的那一行的第一个非空字符
M 光标移动到当前屏幕最中间那一行的第一个非空字符
L 光标移动到当前屏幕最下方的那一行的第一个非空字符
G 光标移动到该文章最后一行的第一个非空字符
nG(n代表数字) 光标移动到该文章第n行的第一个非空字符
n 光标从当前行向下移动n行的第一个非空字符
(2)输入模式
i,I i为在当前光标所在处插入输入的文字,I为在光标所在行第一个非空字符插入输入的文字
a,A a为在当前光标所在处下一个字符插入输入的文字,A为在光标所在行最后一个字符的下一个字符处插入输入的文字
o,O o为在光标所在行的下一行行首开始插入字符,O为在光标所在行的上一行行首开始插入字符
r,R r为替换光标所在那一个字符,R为一直替换光标所指的文字,直到退出
Esc 退出,回到命令模式
(3)底线命令模式
/word 在光标之后查找word字符串
?word 在光标之前查找word字符串

linux创建、删除、编辑、文件,目录,权限等相关推荐

  1. linux命令 创建目录权限,linux创建用户并设置目录权限

    [TOC] <linux创建用户并设置目录权限>首发牧马人博客转发请加此提示 常用命令 用户列表文件:/etc/passwd 用户组列表文件:/etc/group 查看系统中有哪些用户:c ...

  2. linux创建和编辑文件,linux基础-第九单元 利用vi编辑器创建和编辑正文文件

    vi编辑器简介 什么是vi vi编辑器的操作模式 vi编辑器的3种基本模式 在vi编辑器中光标的移动 移动光标位置的键与光标移动间的关系 进入插入模式 从命令行模式进入插入模式的命令 在命令行模式下删 ...

  3. Linux 创建用户分配文件夹权限

    为什么80%的码农都做不了架构师?>>>    root@cloud:~#useradd -d /usr/www -m newuser root@cloud:~#passwd new ...

  4. Linux修改文件/目录权限

    修改文件/目录权限 第一种方式 通过chmod指令,可以修改文件或者目录的权限 +: 添加权限 -: 减少权限 u: 所有者 g: 所在组 o: 其他人(组) a: 所有人(u,g,o的总和) 例: ...

  5. 如何恢复 Linux 上删除的文件

    转自:http://blog.csdn.net/chinalinuxzend/article/details/2591694 如何恢复 Linux 上删除的文件 来源:developerWorks 中 ...

  6. 文件/目录权限相关命令:chmod、chown、umask、lsattr/chattr命令解析

    2019独角兽企业重金招聘Python工程师标准>>> 本文索引: 文件/目录权限修改:chmod 预备知识 几种具体用法 重要参数: -R 所有者/所属组修改: chown 几种具 ...

  7. Linux 下删除大量文件效率对比

    今天我们来测试一下Linux下面删除大量文件的效率. 首先建立50万个文件 $ test for i in $(seq 1 500000);do echo text >>$i.txt;do ...

  8. Linux创建用户并赋予Root权限

    Linux创建用户并赋予Root权限 添加普通用户 [root@server ~]# useradd test //添加一个名为test的用户 [root@server ~]# passwd test ...

  9. win7怎么把计算机删除文件,windows7文件夹删除不了需要权限怎么办_win7删除电脑文件需要权限解决方法-win7之家...

    在使用win7系统的过程中,许多用户都会创建一些文件来进行管理分类,然而常常会出现不需要用到的文件夹出现,这时我们在将其进行删除的时候却出现提示需要权限才可以正常删除,那么windows7文件夹删除不 ...

  10. linux 创建/删除 swap交换分区

    linux 创建/删除 swap交换分区 阿牛太帅 2019-02-20 15:16:02  2409  收藏 2 文章标签: swap交换分区 版权 linux 创建swap交换分区 swap 作为 ...

最新文章

  1. vb.net结构化异常处理和“邪用”
  2. msbuild FileSysExcludeFiles
  3. pat1094. The Largest Generation (25)
  4. mysql8.0_grant改变-You are not allowed to create a user with GRANT
  5. 基本系统部署完成!北斗三号闪耀中国智慧
  6. Docker Review - dockerfile 实战_给基础镜像增加功能
  7. Linux下网络流量实时监控工具大全
  8. 剑指Offer--青蛙跳台阶引发的一系列问题
  9. LeetCode 538. 把二叉搜索树转换为累加树(逆中序 根右左)
  10. node.js路由控制
  11. SpringBoot系列: 单元测试2
  12. python游戏按键无效_瞬速掌握Python系统管理-调试和分析脚本1-debugging
  13. 12个免费在线的Web网站性能测试工具
  14. 爬虫学习笔记(一)初识爬虫
  15. LW_OOPC介绍(转载)
  16. JAVA调用java执行,什么结果也没有
  17. 广数25i系统倒刀回刀m代码_广数系统指令
  18. Java Se 、JavaEE、JavaME区别
  19. 保密基本知识试题(2017年版)(共281题)
  20. 第二人生的源码分析(十四)人物角色的实现

热门文章

  1. 线上线下相结合将成为未来的教育趋势
  2. 使用jquery实现隔行换色($(tbody tr:odd)获取奇数行和$(tbody tr:even)获取偶数行)以及CSS类操作addClass()的使用
  3. 泰坦尼克灾难-可视化
  4. 30岁转行软件测试靠谱吗?一个过来人的心路历程送给迷茫的你
  5. 一元享移动怎么样_揭露铜仁移动公司138元全家享套餐中的骗局!
  6. [设计] 香港地铁站点主题色的配色
  7. Excel技能培训之图表展示
  8. 自然语言处理笔记7-哈工大 关毅
  9. 用计算机咋在电脑打字,怎样用电脑快速打字
  10. 《码农翻身》读后感第三天