加入收藏 | 设为首页 | 会员中心 | 我要投稿 开发网_新乡站长网 (https://www.0373zz.com/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 服务器 > 搭建环境 > Linux > 正文

linux中文件与目录管理的示例分 析

发布时间:2022-12-03 11:29:54 所属栏目:Linux 来源:
导读:  这篇文章给大家分享的是有关linux中文件与目录管理的示例分析的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。

  ====基本命令====

  # pwd [-P] :显示当前的工作目录
  这篇文章给大家分享的是有关linux中文件与目录管理的示例分析的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。
 
  ====基本命令====
 
  # pwd [-P] :显示当前的工作目录
 
  -P:选项表示显示实际的工作目录,而非连接文件本身的目录名
 
  # mkdir [-mp] 目录名:新建目录
 
  -m:设置文件的权限,直接设置,不需要看默认权限(umask)
 
  -p:递归创建目录
 
  # rmdir [-p] 目录名称:删除空的目录
 
  -p:连同上层空目录也一起删除
 
  # echo $PATH 可以显示可执行文件路径,如果在当前目录下,必须输入./xx才能执行,默认当前路径.不在PATH中。
 
  # ls [-adhlSt] 目录:列出目录里的文件
 
  -a:所有文件,包含隐藏文件
 
  -d:仅仅列出目录的信息,不列出里面的文件
 
  -h:文件大写以K,M,G显示
 
  -l:一行一行显示详细信息
 
  -S:按文件大小排序,而不是默认的文件名排序
 
  -t:依文件修改时间排序
 
  –full-time:文件修改的完整时间
 
  ====文件的复制====
 
  # cp [-apdriu] source1 source2 … directory
 
  -a:相当于-pdr
 
  -p:连同文件属性一起复制,而非使用默认属性(备份常用)
 
  -d:若源文件为link file,则复制link file而非文件本身
 
  -r:递归复制,用于目录复制行为(常用)
 
  -i:若目标文件存在,在覆盖时候询问操作的进行(常用)
 
  -u:若目标文件比源文件旧才更新目标文件
 
  注意:cp dir1/* dir2/ 和cp -r dir1/ dir2/的区别,前一个复制dir1下的所有文件到dir2,后一个复制dir1目录到dir2(-r 连带目录下的文件也递归复制)
 
  ====文件的删除====
 
  # rm [-fir] 文件或者目录
 
  -f:force,忽略不存在的文件,不出现警告信息,也不询问用户是否删除
 
  -i:互动模式,询问用户是否删除
 
  -r:递归删除,谨慎小心!!
 
  ====文件的移动====
 
  # mv [-fiu] source1 source2 … directory
 
  -f:force,不询问,直接覆盖
 
  -i:目标文件已经存在,询问是否覆盖
 
  -u:如果目标文件已存在,且source比较新,才覆盖
 
  ====获取path和filename====
 
  # dirname /etc/sysconfig/network 得到/etc/sysconfig
 
  # basename /etc/sysconfig/network 得到 network
 
  ====文件内容查询====
 
  cat:从第一行开始显示
 
  tac:最后一行开始显示
 
  nl:显示的时候,输出行号
 
  more:一页页显示,只能向后翻页
 
  less:一页页显示,可以向前向后翻页,man页面就是调用的less
 
  head -n 100:只显示头100行,head -n -100:前面的所有行,不包括最后的100行
 
  tail -n 100 -f /var/log:只显示结尾100行(-f可以持续显示内容,很有用),tail -n +100:显示后面所有行,但不包括最前面的100行
 
  od:以二进制方式读取文件内容
 
  ====文件的三个比较重要的时间属性====
 
  mtime:modification time,文件的创建或者修改时间
 
  ctime:文件的状态status改变的时间,比如权限或者属性更改
 
  atime:access time,文件被访问被读取的时间
 
  可使用命令:ls -l –time=atime/ctime/mtime 显示。默认是mtime
 
  利用touch命令可以修改以上三个时间,可以用来创建一个空的文件
 
  ====默认权限与隐藏权限====
 
  chattr设置隐藏属性,lsattr查看隐藏属性
 
  # umask -S :查看默认权限
 
  对文件和目录的默认权限是不用的:
 
  对文件而言:-rw-rw-rw
 
  对目录而言:drwxrwxrwx
 
  而umask的数值指的是在此基础上剪掉的权限部分。
 
  # umask 002 可设置
 
  # chattr [+-=][ai] 文件或者目录
 
  +:增加,如果原本存在,不动,-也是一样,=直接赋值
 
  a:这个文件只能增加数据,也不能删除也不能修改数据,只有root可以设置这个东东
 
  i:这个就厉害了,可以让一个文件不被删除、改名、设置连接也无法写入或添加数据,只有root可以设置。
 
  # lsattr [-adR] 文件或目录,可以查看隐藏属性
 
  ====文件特殊权限:SUID,SGID,SBIT====
 
  当s出现在owner的x上时候,代表SUID,其含义是:
 
  * SUID权限仅对二进制程序(binary program)有效;
 
  * 执行者对于该程序需要具备x的可执行权限;
 
  * 本权限仅在执行程序过程中(run-time)有效;
 
  * 执行者将具有该程序owner的权限。
 
  当s出现在group的x上时候,代表SGID,其含义是:
 
  对文件来讲 –>
 
  * SGID对二进制程序有用;
 
  * 程序执行者对该程序来说,需具备x的权限;
 
  * 执行者在执行过程中会获得该程序用户组的支持。
 
  对目录来讲–>
 
  * 用户如果对此目录具有r与x的权限,该用户可以进入该目录;
 
  * 用户在此目录下的有效用户组(effective group)变为该目录的group;
 
  * 若用户在此目录下具有w权限,则用户创建的新文件的group与此目录的group一样。
 
  SBIT(Sticky Bit)只对目录有效,作用是:
 
  * 当用户对于此目录有w,x权限的时候;
 
  * 用户在该目录下创建文件或者目录,仅有自己和root才能删除
 
  4为SUID,2为SGID,1为SBIT
 
  chmod 4755 filename,你懂得。如果是S和T表示连x的权限都没有了,那s和t的设置就没有啥用了,摆设而已,空的。
 
  ====命令与文件的查询====
 
  # which command:查找命令的位置,根据$PATH去查找的。
 
  文件名的查找:
 
  先用whereis 和 locate查找,速度快,因为直接查询数据库,而找不到后再用findLinux 文件与目录管理,直接搜索硬盘
 
  # whereis [-bmsu] 文件或目录名
 
  -b:只找二进制文件
 
  -m:只找说明文件manual路径下的文件
 
  -s:只找source源文件
 
  -u:查找不在上述三个选项中的其他特殊文件
 
  # locate [-ir] keyword
 
  -i:忽略大小写
 
  -r:正则式查找
 
  最后一个find命令,太强大了,不想写了,自己去查吧。
 
  find /var -mtime +4:大于等于5天前的文件名
 
  find /var -mtime -4:小于等于4天内的文件名
 
  find /var -mtime 4:4~5天那一天
 
  find /home -user yidao
 
  find / -nouser
 
  find / -name password:名字为password的文件
 
  find /var -type s:socket文件
 
  find / -perm +7000
 
  find / -perm +7000 -exec ls -l {} \;
 
  find /etc -name ‘*httpd*’ :通配符形式也行
 
  感谢各位的阅读!关于“linux中文件与目录管理的示例分析”这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,让大家可以学到更多知识,如果觉得文章不错,可以把它分享出去让更多的人看到吧!
 

(编辑:开发网_新乡站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!