Linux基础2-2 基础文件管理命令

文件和目录的了解从创建开始

文件和文件目录的命名规则:

  • 文件长度不能超过255个字符
  • 不能使用 / 当文件名
  • 文件名严格区分大小写

创建和访问文件时的路径分为两种:

  • 绝对路径:从根目录到达目标文件或目录位置的路径
  • 相对路径:根据当前位置到达指定文件或目录的路径

文件管理命令:

mkdir :创建一个空目录

  • 语法:mkdir [选项] [路径 / 文件名]
  • tree :查看目录树(需要安装默认没有)
  • 选项: 
    • -v :显示详细的创建信息
    • -p :递归创建目录,指定的路径上不存在的目录都会创建
    • 命令行展开,一次创建多个目录
    • 使用数学的方式9创建目录,{a,b}{b,c} 会组合成ab,ac,db,dc

rmdir:删除一个空目录

  • 语法:rmdir [选择] [参数]
  • 选项:
    • -p :递归删除空目录

touch:主功能用来修改文件时间戳,但是可以用来创建文件

  • 语法:touch [选项] [参数]
  • 选项:
    • -c :不创建任何文件
    • -m :只更新或修改更改文件时间
    • -a :只更新或修改访问时间
    • -t:指定一个时间
  • stat :查看文件的时间戳
  • 创建文件语法:touch [文件名]

nano :一个文本编辑器,该文件不存进行编辑,保存后就会创建这个文件

  • 语法:nano [文件名]
  • Ctrl + o 保存,Ctrl + x 退出

rm :删除文件或者目录

  • 语法:rm [选项] [参数]
  • 选项:
    • -i :强制删除,默认的状态
    • -f :不提示 信息直接删除
    • -r :删除出一个目录并且参数目录中的文件

cp :复制和移动文件或目录

  • 语法:cp [选项] [源文件及目标] [目标文件及目录]
    • 如果源文件为多个,目标必须为目录
    • 当目标为文件时,如果这个文件存在,则源文件将会覆盖目标文件,并保存源文件名,如果目标文件不存在,复制过来的文件名将改为目标文件名
  • 选项:
    • -r -R :递归复制目录,且复制目录下的子目录
    • -f :强行复制,不提示
    • -i :复制覆盖时提示
    • -p :在复制时保存源文件的属性
    • -l :对文件建立硬链接,而非复制文件
    • -a :归档复制,常用于备份
  • 当使用花括号时,可以指定多个源,一个目标

mv :剪切和移动文件

  • 语法:mv [选项] [源目录或文件] [目标路径和新的文件名]
    • 当源路径与目标相同,且文件名不同时,此操作为更名操作
    • 当剪切的源为目录时,目标不可以是文件
    • 当目标文件已存在时,源文件将覆盖并保持源文件名称,当目标文件不存在,源文件将更名为目标文件名
  • 选项
    • -f :强制覆盖,不提示
    • -t :将目标和源反过来书写,-t 后跟目标

install :安装或者升级软件或备份数据

  • 同cp命令,都可以将文件/目录拷贝到指定路径
  • 语法(基于cp):install [选项] [源文件] [目标文件]
  • 选项:
    • -d :创建目录
    • -t :先指定目标,后指定源,源可以有多个

cat :查看文件内容,直接在命令下方连接显示

  • 语法:cat [选项] [参数]
  • 选项:
    • -n :在显示是对每一行进行编号
    • -E :显示每一行的行结束符
  • tac:用法同cat,但是显示的是从文件的末尾开始
  • 在 当直接使用cat时,不使用参数,会进入标准输入模式,将标准的输入在标准输出中输出,使用Ctrl + c结束

more :分页显示文件内容

  • 可以翻页的显示文件内容,可以向后翻页,但不可向前翻页,翻页打文件的末尾自动结束
  • 语法:more [选项] [参数]

less :分页显示文件内容

  • 可上下翻页,空格键向下翻一页,B键向前翻一页,PgUp和PgDn同前两个功能,回车键向后翻一行浏览完成后使用q键退出
  • 语法:less [选项] [参数]

head/tail :查看文件内前后n行内容

  • head:查看文件前N行,默认10行
  • tail :查看文件的后N行,默认10行
  • 语法:head/tail [选项] [参数]
  • 选项:
    • -n [数字] :根据式子显示文件的多少行内容
    • -f (tail专属) :显示文件的最后几行内容,默认10行,且显示完不退出,形成一个动态显示的状态,当其他用户对该文件的末尾进行修改、追加内容时,会动态的显示

cut:按关键字将文件内容切开提取与关键字相关的行

  • 语法:cut [选项] [参数 ][选项] [参数]
  • 选项:
    • -d :指定字段的分隔符,默认为空格
    • -f :执行截取的字段行
      • 1-3 :表示1到3行
      • 1,3 :表示1行和3行

文本排序命令:

sort :对文件内容进行排序

  • 不影响文件内容,只在显示中排序,默认按首字符的升序排列
  • 语法:sort [选择] [参数]
  • 选项:
    • -n :按值大小排序
    • -r :降序排序
    • 组合一起使用,是按数值大小降序排序
    • -t :指定字段分隔符
    • -k :指定第几个字段
    • -u :相同的行只显示一次
    • -f :排序忽略字符大小写

uniq :显示文件内容

  • 语法:uniq [选项] [参数]
  • 选项:
    • -d :只显示重复的行
    • -c :显示每一行,并标出显示的次数

wc :文本统计

  • 显示的分别是 行数、单词数、字节数
  • 语法:wc [选项] [参数]
  • 选项:
    • -l :只显示行数
    • -m :只显示单词数
    • -c :只显示字节数
    • -L :表示最长的一行包含多少个字符

tr:在定义范围内,将文件内容中字符大小写改变,或删除指定的字符

  • 语法1:tr ‘转换字符’ ‘被转换字符’ <[参数]
  • 语法2:tr [选项] ‘指定字符’ [参数]
  • 选项:
    • -d :删除出现在字符集中的所有字符
原文地址:https://www.cnblogs.com/laogama/p/12945968.html