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下文件类型

- 普通文件

d 目录文件

b 块设备

c 字符设备

l  符号链接文件

p 管道文件pipe

s 套接字文件socket

3、相对路径与绝对路径

相对路径:不以斜线开始,指定相对于当前工作目录或某目录的位置,可以作为一个简短的形式指定一个文件名

绝对路径:以正斜杠开始,完整的文件的位置路径,可用于任何想指定一个文件名的时候

基名:basename

目录名:dirname

4、文件通配符

* 匹配零个或多个字符

? 匹配任何单个字符

~ 当前用户家目录

~mage 用户mage家目录

~+ 当前工作目录

~- 前一个工作目录

[0-9] 匹配数字范围

[a-z]:字母

[A-Z]:字母

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

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

预定义的字符类:man 7 glob

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

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

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

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

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

  [:blank:]:水平空白字符

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

  [:punct:]:标点符号

  [:print:]:可打印字符

  [:cntrl:]:控制(非打印)字符

  [:graph:]:图形字符

  [:xdigit:]:十六进制字符

5、相关命令

(1) pwd  显示当前绝对路径

   -P 显示真实物理路径

   -L 显示链接路径(默认)

(2) cd   改变目录

  cd ..  切换至父目录

  cd -  切换至上一个工作目录

  cd   切换至当前用户的主目录

(3) ls  列出当前目录的内容或指定目录

  ls -a 包含隐藏文件

  ls -l 显示额外的信息

  ls -R 目录递归

  ls -ld 目录和符号链接信息

  ls -1 文件分行显示

  ls –S 按从大到小排序

  ls –t 按mtime排序

  ls –u 配合-t选项,显示并按atime从新到旧排序

  ls –U 按目录存放顺序显示

  ls –X 按文件后缀排序

(4) stat  查看文件的状态

  三个时间戳:

    access time 访问时间,atime,读取文件内容

    modify time 修改时间, mtime,改变文件内容(数据)

    change time 改变时间, ctime,元数据发生改变

(5) touch  创建文件和刷新时间

  touch [OPTION]... FILE...

    -a 仅改变 atime和ctime

    -m 仅改变 mtime和ctime

    -t [[CC]YY]MMDDhhmm[.ss] 指定atime和mtime的时间戳

    -c 如果文件不存在,则不予创建

(6) cp  复制文件和目录

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

  cp [OPTION]... SOURCE... DIRECTORY

  cp [OPTION]... -t DIRECTORY SOURCE...

  cp SRC DEST

    -i 覆盖前提示

    -n 不覆盖,注意两者顺序

    -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 --verbose 显示详细过程

    -f --force 强制复制

    -u --update 只复制源比目标更新文件或目标不存在的文件

    -b 目标存在,覆盖前先备份,形式为 filename~

    --backup=numbered 目标存在,覆盖前先备份加数字后缀

(7) mv   移动和重命名文件

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

  mv [OPTION]... SOURCE... DIRECTORY

  mv [OPTION]... -t DIRECTORY SOURCE...

  常用选项:

    -i 交互式

    -f 强制

    -b 目标存在,覆盖前先备份

(8) rm  删除

  rm [OPTION]... FILE...

  常用选项:

    -i 交互式

    -f 强制删除

    -r 递归

    --no-preserve-root 删除/

(9) file  确定文件内容

  file [options] <filename>...

    -b 列出文件辨识结果时,不显示文件名称

    -f filelist 列出文件filelist中文件名的文件类型

    -F 使用指定分隔符号替换输出文件名后默认的”:”分隔符

    -L 查看对应软链接对应文件的文件类型

    --help 显示命令在线帮助

(10) 目录操作

tree 显示目录树

  -d: 只显示目录

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

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

mkdir 创建目录

  -p: 存在于不报错,且可自动创建所需的各目录

  -v: 显示详细信息

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

rmdir 删除空目录

  -p: 递归删除父空目录

  -v: 显示详细信息

rm -r 递归删除目录树

5、硬链接和软链接

(1) 硬链接

  创建硬链接会增加额外的记录项以引用文件

  对应于同一文件系统上一个物理文件

  每个目录引用相同的inode号 创建时链接数递增

  删除文件时:

    rm命令递减计数的链接

    文件要存在,至少有一个链接数

    当链接数为零时,该文件被删除

    不能跨越驱动器或分区

  语法:ln filename [linkname ]

(2) 软链接

  一个符号链接指向另一个文件

  ls -l 显示链接的名称和引用的文件

  一个符号链接的内容是它引用文件的名称

  可以对目录进行

  可以跨分区

  指向的是另一个文件的路径;其大小为指向的路径字符串的长度;不增加或减少目标文件inode的引用计数

  语法:ln -s filename [linkname]

linux学习-文件管理的更多相关文章

  1. Linux学习笔记(二) 文件管理

    了解 Linux 系统基本的文件管理命令可以帮助我们更好的使用 Linux 系统,以下介绍几个常用的文件管理命令 1.pwd pwd 是 Print Working Directory 的简写,用于显 ...

  2. Linux学习笔记之四————Linux常用命令之文件管理

    Linux命令——文件管理相关命令 <1>查看文件信息:ls ls是英文单词list的简写,其功能为列出目录的内容,是用户最常用的命令之一,它类似于DOS下的dir命令. Linux文件或 ...

  3. deepin linux学习笔记(四)进不去图形界面怎么办?

    目录 deepin linux学习笔记(四)进不去图形界面怎么办? 前言 更换成lxde桌面 进不去图形界面怎么办? 总结 deepin linux学习笔记(四)进不去图形界面怎么办? 前言 生命不息 ...

  4. linux学习:【第1篇】初识Linux及安装

    狂神声明 : 文章均为自己的学习笔记 , 转载一定注明出处 ; 编辑不易 , 防君子不防小人~共勉 ! linux学习:[第1篇]初识Linux及安装 写在前面 学习之初看了一段文章,很有感触,所以也 ...

  5. 我的Linux学习之路及参考书籍

    学习目的 很简单的考虑,最近在各大招聘网站上找工作,发现多数c/c++开发职位都需要Linux开发经验,让我很苦恼,因为Linux我到目前为止知之甚少,知道Linux的概念,也在大学期间了解过一段时间 ...

  6. Linux学习-计算机基础

    Linux 学习-计算机基础 一.描述计算机的组成及其功能. 计算机系统是由硬件(Hardware)和软件(Software )两部分组成. 硬件: 从硬件基本结构上来讲,计算机是由运算器.控制器.存 ...

  7. 转 Linux命令-文件管理命令

    http://jingyan.baidu.com/article/9113f81bc1c7a72b3214c7d3.html Linux命令-文件管理命令 浏览:4118 | 更新:2012-11-1 ...

  8. Linux学习笔记(一) 文件系统

    对于每一个 Linux 学习者来说,了解 Linux 文件系统的结构是十分有必要的 因为在 Linux 中一切皆文件,可以说只有深入了解 Linux 的文件系统,才会对 Linux 有更深刻的理解 L ...

  9. Linux学习笔记(四) vi编辑器

    一.vi 编辑器 vi 编辑器 (Visual Interface) 是所有 Unix 及 Linux 系统下标准的编辑器,相当于 Windows 系统中的记事本 它有三种模式,分别是: Comman ...

随机推荐

  1. 什么时候需要用的Vue.nextTick()

    什么时候需要用的Vue.nextTick() 你在Vue生命周期的created()钩子函数进行的DOM操作一定要放在Vue.nextTick()的回调函数中.原因是什么呢,原因是在created() ...

  2. windows mysql官方绿色版zip包安装教程

    环境: 系统环境 Windows 10 64位 mysql版本 5.7.19 一.万变不离的下载 下载页面:https://dev.mysql.com/downloads/mysql/ 点击 Down ...

  3. vue.jsc初体验

    Vue 1.安装脚手架 (1)npm install -g vue-cli (2)Vue -v //查看是否安装成功 (3)Vue init webpack name(名称) (4)Npm insta ...

  4. c#继承与构造函数的调用

    1.实例化父类时,可以通过new子类来实例化父类,执行构造函数的顺序为:先执行父类的构造函数,再执行子类的构造函数. 2.实例化子类时,只可以new子类,执行顺序同上. 3.父类实例化后,只能执行父类 ...

  5. Vue过渡:用Velocity实现JavaScript钩子

    Velocity is an animation engine with a similar API to jQuery's $.animate(). It has no dependencies, ...

  6. hdu2182Frog(动态规划)

    Problem Description A little frog named Fog is on his way home. The path's length is N (1 <= N &l ...

  7. jmeter处理接口加密和解密

    https://www.liangzl.com/get-article-detail-39672.html https://www.cnblogs.com/artoftest/p/7277996.ht ...

  8. <转载>面试官: 讲讲MySql表设计需要注意什么?

    作者:孤独烟 出处: http://rjzheng.cnblogs.com/ 综述 近期由于复习了一下MySQL的内容看到一篇比较好的文章,转载分享一下.大家看完,其实能避开很多坑.而且很多问题,都是 ...

  9. 验证客户端的合法性、socketserver模块

    一.为了防止客户端被人非法利用,需要在使用之前对客户端进行合法性验证.接下来就是客户端验证的几种方法 hmac  加密方法 import socket import os import hmac #能 ...

  10. 1481:Maximum sum (前缀和+dp)

    [题目描述] 对一个序列A={a1, a2,..., an}给出函数: t1 t2 d(A) = max{ ∑ai + ∑aj | 1 <= s1 <= t1 < s2 <= ...