Linux文件系统及文件管理相关命令

一、Linux文件系统介绍:

Linux文件系统叫做根文件系统(rootfs): root filesystem。文件系统从根目录下开始,用“ /”表示。文件和目录被组织成一个单根倒置树结构。文件系统分层遵循FHS(Filesystem Hierarchy Stantartd)。标准的Linux文件系统,文件名严格区分大小写。使用“/”分割路径。 

1、/目录下有多个子目录,它们的功能分别是:

/boot:引导文件存放目录,内核文件(vmlinuz)、引导加载器(bootloader, grub)都存放于此目录。

/bin:供所有用户使用的基本命令;不能关联至独立分区,OS启动即会用到的程序。

/sbin:管理类的基本命令;不能关联至独立分区, OS启动即会用到的程序。

/lib:启动时程序依赖的基本共享库文件以及内核模块文件(/lib/modules)。

/lib64:专用于x86_64系统上的辅助共享库文件存放位置。

/etc:配置文件目录。

/home/USERNAME:普通用户家目录。

/root:管理员的家目录。

/media:便携式移动设备挂载点。

/mnt:临时文件系统挂载点

/dev:设备文件及特殊文件存储位置

b: block device,随机访问

c: character device,线性访问

/opt:第三方应用程序的安装位置

/srv:系统上运行的服务用到的数据

/tmp:临时文件存储位置

/usr: universal shared, read-only data

bin: 保证系统拥有完整功能而提供的应用程序

sbin:

lib: 32位使用

lib64:只存在64位系统

include: C程序的头文件(header files)

share:结构化独立的数据,例如doc, man等

local:第三方应用程序的安装位置

bin, sbin, lib, lib64, etc, share

/var: variable data files

cache: 应用程序缓存数据目录

lib: 应用程序状态信息数据

local:专用于为/usr/local下的应用程序存储可变数据;

lock: 锁文件

log: 日志目录及文件

opt: 专用于为/opt下的应用程序存储可变数据;

run: 运行中的进程相关数据;通常用于存储进程pid文件

spool: 应用程序数据池

/tmp: 保存系统两次重启之间产生的临时数据

/proc: 用于输出内核与进程信息相关的虚拟文件系统

/sys:用于输出当前系统上硬件设备相关信息虚拟文件系统

/selinux: security enhanced Linux, selinux相关的安全策略等信息的存储位置

2、Linux下常见的文件系统有:ext2、ext3、ext4、xfs等

3、Linux的文件类型:

    可通过ls –l 查看

    -(f): 表示普通文件

    d :  表示目录文件

    b :  表示块设备文件

    c :  表示字符设备文件

    l :   表示链接文件

    p :  表示管道文件

    s :  表示套接字文件

二、目录管理类命令:

1、cd 切换目录

当用户通过终端进入系统之后,默认会进入到该用户的家目录下。

如何查看当前所在的工作目录呢。使用pwd命令可查看。

cd “路径”切换工作目录到指定目录:

    路径包含绝对路径和相对路径:绝对路径从/开始查找,相对路径则以当前工作目录或某个指定的目录做参考来查找。

当前路径会保存在一个名为PWD的变量中,如果切换了目录,上一次所在的工作目录被保存在一个名为OLDPWD的变量中。

cd  –  可以在当前目录和上一次目录中切换。

cd ~   切换至用户的家目录中 

2、查看目录下的文件:

    Ls  [options]  [files_or_dirs]

常见选项:

    -a 显示所有文件,包含隐藏文件

    -A 显示所有文件,但不包含“.”和“..”

    -l 以长格式显示,可以看见文件相关的详细信息。

blob.png

从左至右分别是:文件类型、属主权限、属组权限、其他用户权限、硬链接数、属主、属组、大小、文件最近一次被修改的时间、文件名。

-R 递归显示

-1 文件分行显示 

3、mkdir 创建目录

-p: 如果目录不存在,则创建该目录

-v:  显示详细信息

-m MODE: 创建目录时直接指定权限;

4、删除目录

rmdir  删除空目录

-p: 递归删除父空目录

-v: 显示详细信息

rm –r 递归删除目录树

5、tree 显示目录树结构

   -d: 只显示目录

   -L level:指定显示的层级数目

   -P pattern: 只显示由指定pattern匹配到的路径

三、文件通配符:

* 匹配零个或多个字符

? 匹配任何单个字符

[0-9] 匹配数字范围

[a-z]:大写和小写字母

[A-Z]: 大写字母

[] 匹配列表中的任何的一个字符

[^] 匹配列表中的所有字符以外的字符

[:digit:]:任意数字,相当于0-9

[:lower:]:任意小写字母

[:upper:]: 任意大写字母

[:alpha:]: 任意大小写字母

[:alnum:]:任意数字或字母

[:space:]:水平或垂直空白字符

[:punct:]: 标点符号 

四、文件管理类命令

1、创建文件

touch 若文件不存在,则创建;若文件以存在,则会改写其atime

touch [OPTION]… FILE…

-a: 仅改变 atime

-m: 仅改变 mtime

2、复制文件

cp [OPTION]… [-T] SOURCE DEST

(1)复制单个文件到指定文件

(2)复制多个文件至目录

常见选项:

 -i:交互式

 -r, -R: 递归复制目录及内部的所有内容;

 -a: 归档,相当于-dR –preserv=all

 -d: –no-dereference –preserv=links 不复制原文件,只复制链接名

 –preserv[=ATTR_LIST]

mode: 权限

ownership: 属主属组

timestamp:时间戳

links

xattr

context

all

 -p: 等同–preserv=mode,ownership,timestamp

 -v: 显示过程

 -f:  强制复制

 

3、移动文件

    mv [OPTION]… [-T] SOURCE DEST

(1)   若源目录和目标目录相同,则重命名该文件

(2)   若源目录和目标目录不同,则移动该文件

常见选项:

    -i: 交互式

    -f: 强制

4、删除文件

    rm [OPTION]… FILE…

    常用选项:

-i: 交互式

-f: 强制删除

-r: 递归

原创文章,作者:M20-1钟明波,如若转载,请注明出处:http://www.178linux.com/26672

(1)
上一篇 2016-07-29 15:23
下一篇 2016-07-29 15:24

相关推荐

  • N26 第二周

    1、Linux上的文件管理类命令都有哪些,其常用的使用方法及其相关示例演示。  [1]mkdir : make directories            mkdir [OPTION]… DIRECTORY… &n…

    Linux干货 2017-02-05
  • Linux第二周总结

    1、Linux上的文件管理命令都有哪些,其常用的使用方法及其相关示例演示。 Cp、mv、rm cp命令: copy 单源复制:cp [OPTION]… [-T] SOURCE DEST 如果DEST不存在:则事先创建此文件,并复制源文件的数据流至DEST中; 如果DEST存在: 如果DESST是非目录文件;则覆盖目标文件; 如果DEST是目录文件…

    2017-07-09
  • shell脚本编程基础之二(if、case、for、while、until、continue、break语句使用)

    在shell脚本编程中,我们可以根据命令的状态结果,判断要不要执行下一步,但是有时候要判断的问题不止一个,甚至对问题本身都要做判断;同时问题的结果有时也不止一个,这时要借助简单的逻辑与和逻辑或,就显得很无力;要完成复杂的任务,需要借助一定的流程控制:顺序执行、选择执行、循环执行、同时在脚本执行过程中,有用户交互输入的需; if语句 case语句 for语句 …

    Linux干货 2016-08-21
  • LVM逻辑卷管理

    一、简述 什么是逻辑卷?LVM(Logical Volume Manager)利用Linux内核device-mapper实现存储系统的虚拟化。通过LVM,把底层存储硬件抽象化成存储逻辑块,再将这些逻辑块集合构成存储池,从存储池空间划分分区,可以简单地扩大或缩小分区,而不用担心硬盘没有足够的连续空间。 使用逻辑卷分区有什么用?使用逻辑卷分区重点在于可以弹性地…

    Linux干货 2016-09-06
  • 文本处理三剑客之 Sed

         Sed是一种流编辑器,它一次处理一行内容。处理时,把当前处理的行存储在临时缓冲区中,称为“模式空间”(pattern space),接着用sed命令处理缓冲区中的内容,处理完成后,把缓冲区的内容送往屏幕。接着处理下一行,这样不断重复,直到文件末尾。文件内容并没有改变,除非你使用重定向存储输出。Sed主要用来自…

    2017-08-26
  • 自制Linux系统

    自制Linux系统 1.首选准备一台Linux虚拟机并添加一块新硬盘 2.分区并创建文件系统,创建两个必要的分区根分区和boot分区 fdisk /dev/sdb  分区 mke2fs -t ext4 /dev/sdb1    创建boot文件系统 mke2f…

    Linux干货 2016-09-16