五、文件系统组成和基本操作

发布时间 2023-11-28 22:07:51作者: Ju生淮北
1、Linux文件系统结构

Linux:是一个单根倒树状的文件系统结构

Windows:是多根多树状的文件系统结构

  • 文件系统从根目录开始,表示为一个单独的 ‘ / ’ 字符

  • 文件命名大小写敏感

  • 路径以 ‘ / ’ 为分隔

2、 Linux重要目录
  • /root:超级用户root的家目录(用户文件默认存放的位置)

  • /home/username:普通用户的家目录(在该目录下以普通用户的用户名命令的目录

  • /usr:自定义安装的软件的目录,共享库等目录重要的子目录

    • /usr/bin:存放的是普通用户可以执行命令的程序

    • /usr/sbin:存放的是超级用户可以执行命令的程序

    • /usr/local:本地自定义软件安装目录(好比Windows中的控制面板)

  • /etc :类似于C盘中的Windows,是系统的核心配置目录(网络、配置信息都存放在此)

  • /var:主要用来存放数据(日志数据(系统启动日志、应用程序日志、安全日志)、服务数据(网站内容、ftp内容、邮件内容))

  • /tmp:系统的临时目录(用来存储系统临时文件)

  • /boot:系统启动引导文件和内核存放位置

  • /dev:存放系统的硬件设备

  • /proc和/sys:反应当前系统运行状态(在此目录下存放的内容,在系统关机时会自动删除)

  • 说明:在Linux 7或者更高版本中,/bin和/usr/bin,/sbin和/usr/sbin,/lib和/usr/lib,lib64和/usr/lib64中,/中的目录是/usr/中对应目录软链接。

3、文件和目录名
  • 名字不能多于255个字符

  • 所有字符都要求是有效的,除斜线(/)之外(/是路径分隔符)

    不要使用某些特殊的字符在文件或者目录名中

    当文件名中有特殊字符时应用引号保护引起来

  • 命名和大小写敏感

    例如:Mail、mail

4、绝对路径和相对路径
  • 以 / 开头的路径称为绝对路径(可以在任意位置使用)

  • 不以 / 开头的路径称为相对路径(只能在特定位置使用)

1 [root@example ~]# cd /etc/
2 [root@example etc]# cd sysconfig/
3 [root@example sysconfig]# pwd
4 /etc/sysconfig
5、常用命令
  • cd:切换目录

    • cd 不接参数,切换到当前用户的家目录

    • cd .. 回退到上一级目录

    • cd - 回退到上一次目录

    • cd ~ 回退到家目录

    • cd ~zhangsan回退到zhangsan的家目录

  • pwd:查看当前所在位置

  • ls :查看目录或文件

    • ls [OPTION]... [FILE]...

    • ls -a:查看所有文件(隐藏文件)

      • 在系统的任意位置都有两个子目录,分别是 . (表示当前目录)和 .. (表示上一级目录)

    • ls -l:查看文件的长格式(详细信息)

    • ls -R:以树状方式显示目录的文件结构(一般情况:和 ls -lR 连用

    • ls -d:查看目录本身(一般情况:和 ls -ld 连用)

  • cp 拷贝文件和目录

    • cp [OPTION]... [-T] SOURCE DEST

      • 如果源是一个文件,目标是一个目录,则直接将文件拷贝到该目录

      • 如果源是一个文件,目标是一个已经存在的文件,则覆盖该文件

      • 如果源是一个文件,目标是一个不存在的文件,则创建该文件

    • cp -r:拷贝目录

  • mv 移动/重命名文件

    • mv [OPTION]... [-T] SOURCE DEST

      • 如果源是一个文件,目标是一个目录,则直接将文件移动到该目录

      • 如果源是一个文件,目标是一个已经存在的文件,则覆盖该文件

      • 如果源是一个文件,目标是一个不存在的文件,则创建该文件

    • 如果mv移动的文件的源路径和目标路径一致则重命名

  • 创建和删除文件

    • touch:创建一个空文件和更新时间戳

 1 # 文件时间戳
 2 [root@example tmp]# stat zhangsan.txt
 3   File: zhangsan.txt
 4 Context: 
 5 Access: #文件最后一次被访问的时间
 6 Modify: #文件最后一次被修改的时间
 7 Change: #文件最后一次被改变的时间(属性)
 8  Birth: #文件的创建时间,在openEuler中启用
 9  
10 # 修改文件时间戳 atime
11 [root@example tmp]# touch -a -d "2000-01-01 12:30:30" zhangsan.txt 
12 # 修改文件时间戳 mtime
13 [root@example tmp]# touch  -d "2000-01-01 12:30:30" zhangsan.txt 
14 # 修改文件时间戳 ctime 
15 (先修改系统时间,在同步touch,最后把系统时间恢复)
16 [root@example tmp]# touch zhangsan.txt 
    • rm 删除文件或目录

      • rm -f:强制删除

      • rm -rf:强制递归删除目录和文件

  • 创建目录/删除目录

    • mkdir:创建空白目录

      • mkdir -p:递归创建目录

    • rmdir:安全删除目录(只能删除空白目录)

  • file查看文件类型

    Linux中文件没有后缀名