• Linux文件与目录管理命令小结


    1、cd

    cd ~,cd:回到自己的主文件夹;cd ..:目前的上一层;cd -:回到刚才那个目录

    2、pwd显示当前的所在的目录

    -p:标书不以连接文件的数据显示,而是显示正确的完整路径

    3、mkdir新建新目录

    -p:自行创建多层目录;-m mod:强制设置权限

    4、rmdir删除“空”的目录

    当要将一个非空的目录下的东西删掉:rm -r dirName

    5、ls查看文件与目录

    -a:全部文件,包括隐藏文件;-d:仅列出目录本身;-F:根据文件、目录等信息给予附加数据结构(*:代表可执行文件,/:代表目录,=:代表socket文件,|:代表FIFO)

    -i:列出inode号码;-l:列出长数据串(常用);-S:以文件容量大小排序;-t:以时间排序;--color=never/always/auto(文件特性是否给予颜色),--time={atime,ctime}

    6、cp [-adfilprsu] 源文件 目标文件

    -a:相当于-pdr;-d:若源文件为连接文件的属性,则复制连接文件属性而非文件本身;-i:若目标文件已经存在,在覆盖时会先询问操作;-l:进行硬连接的连接文件创建,而非复制文件本身;-p:连同文件的属性一起复制过去;-r:递归持续复制(用于目录)

    7、rm(移除文件或者目录)

    -i:互动模式;-r:递归删除

    8、mv(移动文件与目录、或更名)

    -f:如果目标文件已经存在,不会询问而直接覆盖;-i:互动模式;-u:若目标文件已经存在,且比较新的时候才会更新

    9、cat(查看文件内容)

    -b:列出行号(空白行布不标号);-E:将结尾处的断行字符$显示;-n:打印行号(包括空白行);-V:列出特殊字符;-T:将【Tab】以^I显示出来

    10、tac(反向列示)

    11、nl(添加行号打印)

    -b:指定行号的方式 a:空行也列出 t:空行不列;-n:列出行号的表示的方法 ln:行号在屏幕的最左边显示 rn:行号在自己字段的最右边显示,不加0 rz:同rn且加0;-w:行号字段占用的位数

    12、more(翻页查看)

    在more这个程序额运行过程中,一下几个按键功能:

    空格键:向下翻一页      Enter:向下翻一行      /字符串:向下查询字符串     :f:立即显示出文件名以及目前显示的行数     q:退出     b:往回翻页(只对文件有用,管道无用)

    13、less(一页一页翻动)

    空格键:向下翻一页    【PageDown】:向下翻动一页   【PageUp】:向上翻动一页    /字符串:向下查询字符串   ?字符串:向上查询字符串     n:复制前一个查询   N:反向复制前一个查询  q:退出

    14、head(取出前几行)

    -n number:后面接数字代表几行(不写number默认显示10行,负数表示后面number行数据都不打印)

    15、tail(取出后面几行)

    -n number:(后面接数字,代表后几行的意思,不写默认10行,+number代表前面的number行数据不打印)

    16、od(非纯文本文件)

    -t:后面可以接各种类型

    c:ASCII字符输出;d[size]:十进制;f[size]:浮点数;o[size]:八进制;x[size]:十六进制

    17、touch修改文件时间或创建文件

    -a:仅修改access time(访问时间);-c:仅修改status time(状态时间),若文件不存在则不新建;-d:后面可以接欲修改的日期;-m:仅修改modification time;-t:后面可以接欲修改的时间,格式【YYMMDDhhmm】

    18、umask:设置新建文件或目录默认的权限

    19、chattr设置问阿金的隐藏属性

    +:增加特殊参数;-:减少某一个特殊参数;=:仅有后面接的参数

    a:此文件只能增加数据,而不能删除和修改数据(常用)

    i:让一个文件不能被删除、改名、设置连接也无法写入或添加数据(常用)

    20、lsattr显示文件的隐藏属性

    -a:将隐藏文件的属性也列出来;-d:如果是目录,仅列出目录本身属性而非目录内的问文件名;-R:连同子目录的数据也一同列出来

    21、(关于SUID、SGID、SBIT下一篇在详细记录)

    22、file查看文件的类型

    23、which寻找“执行文件”(脚本文件名、命令)

    24、whereis(文件名的查找,利用数据库来查找数据,快速高效)

    -b:只找二进制文件;-s:只找source源文件;-m:只找在说明文件manual路径下的文件

    25、locate(文件名的查找,寻找的数据由已经创建的/var/lib/mlocate里面的数据提供)

    -i:忽略大小写;-r:后面接正则表达式的显示方式

    26、find(最常用)

    参数一:

    -mtime n:n为数字,在n天之前的“一天之内”被更改的文件

    -mtime +n:意思是n天之前(不含n天本身)

    -mtime -n:意思是n天之内(含n天)

    -atime、-ctime的用法和-mtime一样参数二:

    -uid n:查找属于n这个用户账号Id的文件

    -gid n:查找属于n这个用户组Id的文件

    -user name:查找属于name这个用户的文件

    -group name:查找属于name这个用户组的文件

    -nouser:不属于任何用户

    -nogroup:不属于任何用户组

    参数三:

    -name filename:查找名为filename的文件

    -size [+-]size:查找比size还大(+)或小(-)的文件,单位为c:byte,k:1024bytes

    -type TYPE:指定文件类型,一般文件(f)、目录(d)、socket文件(s)、FIFO(p)、连接文件(b/c)

    -perm mod:查找文件权限刚好为mod的文件

    -perm -mod:查找问文件必须包含mod所有文件(必须全部包含)

    -perm +mod:查找文件包含mod任一权限(有一个即可)

    参数四:

    -exec command:-exec后面可再接其他命令来处理查找到的结果

    fiind的几个例子:

    例一:找出/etc下面,文件容量大于50KB且文件的所有者不是root的文件名,并将权限完整列出

    find /etc -size +50k -uid +0 -exec ls -l {} ;

    例二:找出/etc下面,容量大于1500KB以及容量等于0的文件,并完整列出

    finf /etc ( -size +1500k -o -size 0k ) -exec ls -l {} ;

    最后再补充一点:权限与命令的关系

    情况一:让用户能进入某个目录(比如cd):

    (1)目录:至少x的权限

    (2)文件:如果用户需要查阅(ls等),则文件需要r权限

    情况二:用户在某个目录内读取一个文件(cat、more、less)

    (1)目录:至少x权限

    (2)文件:至少r权限

    情况三:用户修个一个文件

    (1)目录:至少r和x权限

    (2)文件:至少r和w

    情况四:让一个用户在一个目录下创建文件

    (1)目录:至少w和x权限

    情况五:让用户进入目录并执行目录下的某个命令

    (1)目录:至少x权限

    (2)文件:至少x权限

  • 相关阅读:
    Elasticsearch Server,2nd Edition pdf 翻译 中文
    为什么氦气会改变人的音色?
    intellij 文件太大,无法code assistant
    intellij idea rearrange code
    static变量、static方法之间的异同
    linux top 各个标识的含义 详解
    JAVA面向对象编程课程设计——多人扫雷对战
    递归法创建二叉树
    线性表总结
    线性表总结
  • 原文地址:https://www.cnblogs.com/wenhulu/p/5914672.html
Copyright © 2020-2023  润新知