专栏首页happyJaredLinux私房菜:文件目录管理及常见命令

Linux私房菜:文件目录管理及常见命令

本文内容精简、整理、摘抄、有感于《鸟哥的Linux私房菜 - 基础篇第四版》第六章 • Linux的文件权限与目录管理。

  • 路径(PATH)
    • 相对路径:cd /var/tmp/,由根目录/开头
    • 绝对路径:不以/开头,与相对路径写法相对应
  • 环境变量(ENVIRONMENT VARIABLE)。由一堆目录组成,不同目录之间用:分隔。命令相同的情况下,靠前指定的环境变量配置优先级高。
    • 查看命令: echo $PATH
    • 配置文件:/etc/profile
    • 立即刷新:source /etc/profile

常用命令

  • 文件类型
    • file 文件,多用于判断是asciidatabinary文件
  • 目录相关
    • cd - change directory,更换目录。可以是相对路径或者是绝对路径,常见的有:
      • .,表示当前目录
      • ..,进入上一层目录
      • -,返回前一个工作目录
      • ~[user],进入当前用户(或指定user用户)的家目录,不指定~也可以返回家目录
    • pwd - print work directory,显示当前工作目录
      • pwd [-P],显示实际路径而非链接路径
    • mkdir - make directory,创建目录
      • mkdir [-mp] 目录名称-m指定目录所属权限;-p同时创建多级目录
    • rmdir - remove directory,删除空目录(被删目录不能含其它子目录及文件)
      • rmdir [-p] 目录名称-p参数可同时删除上级空目录
  • 文件目录管理
    • ls [-aAdfFhilnrRSt] [--color={never,auto,always}] [--time={mtime,atime,ctime}] [--full-time] 文件或目录 - list,列出列表。参数较多,请用man ls查看更多详细用法,大部分情况下用ll能满足日常使用(等价于ls -al)
      • -a含全部隐藏文件
      • -A含隐藏文件但不含...这两个目录
      • -h以可读形式(KB,GB)展示文件大小,默认为Byte
      • -l以每行长串输出展示数据
      • -r自然排序输出结果的反向
      • -R连同子目录文件一同输出
      • -S以文件大小排序
      • -t以时间排序
    • touch [-acdmt] File - 创建文件
    • cp [-adfilprsu] source*(一个或多个来源文件或目录) destination(目标文件或目录) - copy,复制
      • -a完全相同复制
      • -i出现覆盖询问
      • -p连同源文件属性(权限、用户、时间)一起复制
      • -r递归复制文件目录
      • -s快捷方式形式复制(软连接)
      • -l硬连接
      • -u目标不存在才复制,或存在但mtime较旧
    • rm [-fir] 文件或目录 - remove,删除
      • -f忽略警告
      • -i删除询问
      • -r递归删除
    • mv [-fiu] source*(一个或多个来源文件或目录) directory(目标目录) - move,移动或重命名
      • -f强制覆盖
      • -i覆盖询问
      • -u目标对象存在且mtime较旧的情况下才更新
  • 文件内容查阅
    • cat [-AbEnTv] File,Concatenate,从第一行开始显示文件全部内容
      • -b显示行号(不含空白行)
      • -n显示行号(包含空白行)
    • tac,相对应上面的cat命令,反向从最后一行开始显示文件全部内容
    • nl [-bnw] File,类同于上面两个命令 ( 暂无说明 )
    • more File,一页页向下翻阅查看文件
      • space空格键翻页
      • b 或 ctrl + b往回翻页
      • enter确认键翻行
      • /字符串向下搜索
      • :f显示文件名和当前末尾行的行数
      • q退出
    • less File,类似于more但功能更强大,同样用于翻阅查看文件
      • space空格键 或 page down翻页
      • b 或 ctrl + b 或 page up往回翻页
      • enter确认键翻行
      • /字符串向下搜索
      • ?字符串向上搜索
      • n搜索匹配的下一个
      • N搜索匹配的前一个
      • :f显示文件名、当前显示行范围、byte大小和百分占比等
      • g 或 home跳到文件开头
      • G 或 end跳到文件末尾
      • q退出
    • head [-n num] File,取出前面几行
      • head -n 100 info.log,取出前100行
      • head -n -100 info.log,取出不包括最后100行的所有行
    • tail [-n num] File,取出后面几行
      • -f侦测文件输出
      • tail -n 100 info.log,取出后100行
      • tail -n +100 info.log,取出100行以后的所有行
    • od [-t acdfox] File,非纯文档文本读取命令( 暂无说明 )
  • 文件预设权限
    • umask [-S] [-num] ,显示当前用户在新建文件或目录时的权限默认值
    • umask -num,修改当前用户在新建文件或目录时的权限默认值
  • 文件隐藏属性
    • chattr [+-=][ASacdistu] 文件或目录,配置文件隐藏属性
      • +增设属性
      • -删减属性
      • =赋值属性
      • a只能追加数据不可修改删除
      • i文件不能删除修改添加改名等
    • lsattr [-adR] 文件或目录,显示文件隐藏属性
      • a包括隐藏文件
      • d仅列出目录属性
      • R包含子目录
  • 脚本文件搜寻
    • which [-a] command,搜寻该command的执行档所在位置
    • whereis -[lbmsu] 文件或目录,在指定目录搜索文件或目录
      • l列出指定目录
      • b只找binary文件
      • m只找在manual路径下的文件
      • s只找来源文件
      • u只找不在上面三种类型中的其它文件
    • locate [-iclSr] keyword,根据指定数据库/var/lib/mlocate/mlocate.db搜索,可用updatedb命令更新
      • i忽略大小写
      • c输出统计数量
      • l后面接数量,表示输出几行
      • S展示数据库信息
    • find [PATH] [option] 文件或目录(支持正则匹配),功能比较强大和丰富,具体请用man find查看,常见的option选项有:
      • [-{mtime,atime,ctime} {+,-}n],与时间相关的帅选
      • [-{user,group,nouser,nogroup}],与拥有者或群组相关的过滤
      • [-{name,size,type}],与文件名、大小、类型有关的参数

重点回顾

重点回顾

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • Java异常知识点思考与总结

    Java 中的异常可以是方法执行过程中引发的,也可以是通过 throw 语句手动抛出的。一旦程序运行过程中发生了异常,JRE 就会试图寻找异常处理程序来处理异常...

    happyJared
  • ConcurrentSkipListMap

    对于单链表,即使链表是有序的,如果想要在其中查找某个数据,也只能从头到尾遍历链表,这样效率自然就会很低,跳表就不一样了。跳表是一种可以用来快速查找的数据结构,有...

    happyJared
  • ZooKeeper 名词

    ZooKeeper 本身就是一个分布式程序(只要半数以上节点存活,ZooKeeper 就能正常服务)。 为了保证高可用,最好是以集群形态来部署 ZooKeep...

    happyJared
  • Microsoft同步工具SyncToy

    SyncToy是微软开发的一款同步工具,帮助你快速的拷贝,移动,重命名和删除不同文件夹或者不同电脑之间的文件。SyncToy是微软同步框架的一个实际应用例子. ...

    张善友
  • 让你牛B加身的前端必会Linux命令

    本文并不是一份完整的 Linux 实用命令列表,如果你的预期是这样的,那这篇文章可能就要让你失望了。

    coder_koala
  • 小白Linux入门--基础篇:Linux基本命令

    ls -al -a是显示所有档案及目录 (ls内定将档案名或目录名称开头为"."的视为隐藏档,不会列出)

    浩Coding
  • linux的目录结构及文件基本操作

    sr
  • 我的Python成长之路—03

    py3study
  • 目录类型以及ls,alias命令

    叶瑾
  • 初学者必会的Linux命令 - 基本操作篇

    聚沙成塔

扫码关注云+社区

领取腾讯云代金券