Linux的文件系统:

  根文件系统(rootfs):root filesystem

    

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

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

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

    /lib:基本共享库文件,以及内核模块文件(/lib/modules);

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

    /etc:配置文件目录(纯文本文件);

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

    /root:管理员的家目录;

    /media:便携式移动设备挂载点;cdrom、usb

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

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

      b:block device,随机访问

      c:character device,线性访问

    /opt:第三方应用程序的安装位置;     以前用的比较多,现在用的少了

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

    /tmp:临时文件存储位置;

    /usr:universal shared,read-only data;

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

      sbin:

      lib:

      lib64:

      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:seccrity enhanced Linux,selinux相关的安全策略等信息的存储位置;

  Linux上的应用程序的组成部分:

    二进制程序:/bin, /sbin,  /usr/bin, /usr/sbin,  /usr/local/bin, /usr/local/sbin

    库文件:/lib, /lib64,  /usr/lib, /usr/lib64,  /usr/local/lib, /usr/local/lib64

    配置文件:/etc, /etc/DIRECTORY, /usr/local/etc

    帮助文件:/usr/share/man, /usr/sare/doc, /usr/local/share/man, /usr/local/share/doc

  Linux下的文件类型:

    - (f):普通文件

    d:目录文件;

    b:块设备;

    c:字符设备;

    l:符号链接文件;

    p:管道文件;

    s:套接字文件;

   

bash的基础特性:

  (1)命令历史

    history

      环境变量:

        HISTSIZE:命令历史记录的条数;

        HISTFILE:~/.bash_history;

        HISTFILESIZE:命令历史文件记录历史的条数; 

      history -d OFFSET:删除指定偏移量所在的命令;

           -c:删除所有命令历史

             #:显示历史中最近的#条命令;

            -a:手动追加当前会话缓冲区的命令历史至历史文件中;

    调用历史中的命令:

      !#:重复执行第#条指令;

      !!:重复执行上一条命令;

      !string:执行以字符开头的最近一条命令;

    调用上一条命令的最后一个参数:

      !$

      Esc, .

      Alt+.   并不是所胡系统都支持,建议使用前两种;

    控制命令历史的记录方式:

      环境变量:HISTCONTROL

        ignoredups:忽略重复的命令;连续且相同方为“重复”;

        ignorespace:忽略所有以空白开头的命令;

        ignoreboth:前面两种都忽略

      修改环境变量值的方式:export 变量名=“值”

        变量赋值:把赋值符号后面的数据存储于变量名指向的内容空间;

  (2)命令补全

    bash执行命令:

      内部命令:

      外部命令:bash根据PATH环境变量定义的路径,自左至右在每个路径搜寻给定命令名命名的文件,第一次找到即为要执行的命令;

        直接补全:Tab,用户给定的字符串只有一条唯一对应的命令;

        以用户给定的字符串为开头命令不唯一,则再次Tab会给出列表;

  (3)路径补全

    把用户给出的字符串当做路径开头,并在其指定上级目录下搜索已指定的字符串形状不的文件名;

      如果唯一:则直接补全;

      否则:再次Tab,给出列表;

  (4)命令行展开

    ~:展开为用户的主目录

    ~USERNAME:展开为指定用户的主目录

    {}:可承载一个以逗号分隔的列表,并将其展开为多个路径

      /tmp{a,b} = /tmp/a, /tmp/b

      /tmp/{tom,jerry}/hi = /tmp/tom/hi, /tmp/jerry/hi

  (5) 命令的执行结果状态

    成功

    失败

    bash使用特殊变量$?保存最近一条命令的执行状态结果:

      0:成功

      1-255:失败

    程序执行有两类结果:

      程序的返回值;

      程序的执行状态结果;

目录管理类命令:

  cd,pwd,ls

  mkdir,rmdir

  mkdir [OPTION]... DIRECTORY...

    不加选项时,如果路径中除了最后一个目录之外还有其它的目录也不存在,则报错!

          如果想创建的目录已经存在,则报错!

    -p:如果路径中除了最后一个目录之外还有其它的目录也不存在,则自动创建其它目录!

      如果想创建的目录已经存在,不报错,也不会创建,相当于没执行此命令。

    -v:显示详细信息。

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

  tree:

    -d:只显示目录

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

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

  

  rmdir:删除空目录

    rmdir [OPTION]... DIRECTORY...

      只能删除空目录,如果有文件则会报错。

      -p:删除目标目录后,如果其父目录也为空目录,则也删除,直至非空目录停止。

   

    练习:

      (1) 如何创建/tmp/x/y1, /tmp/x/y2, /tmp/x/y1/a, /tmp/x/y1/b, /tmp/x/y2/a, /tmp/x/y2/b

      (2) 如何创建x_m, y_m, x_n, y_n

      (3) 如何创建/tmp/bin, /tmp/sbin, /tmp/usr, /tmp/usr/bin, /tmp/usr/sbin

      

  文本文件查看类命令:

    cat, tac

    more, less, tail, head

    

    tail [OPTION]... [FILE]...

      -c #:指定获取后#字节

      -n #:指定获取后#行,可简写为-#

      -f:跟踪显示文件新追加的内容;

  文件的时间戳管理工具:

    touch

    文件:metadata, data

      查看文件状态:stat

    三个时间戳:

      access time:访问时间,简写为atime,读取文件内容

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

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

    touch [OPTION]... FILE...

      -a:only atime

      -m:only mtime

      -t STAMP:[[CC]YY]MMDDhhmm[.ss]

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

      

      

Linux:Day3 文件系统的更多相关文章

  1. Linux及文件系统基本介绍

    Linux及文件系统基本介绍 1   互联网行业现状 在服务器端市场: 超级计算机 2014年11月的数据显示前500系统中的485个系统都在运行着 Linux 的发布系统,而仅仅只有一台运行着 Wi ...

  2. [20150925]Linux之文件系统与SHELL

    Linux之文件系统与SHELL 文件系统介绍 ext2/ext3/ext4 Ext2是GNU/Linux系统中标准的文件系统.这是Linux中使用最多的一种文件系统,它是专门为Linux设计的,拥有 ...

  3. 文件系统管理 之 Linux 创建文件系统及挂载文件系统流程详解

    阅读此文,必须具备知识点:<Linux 查看磁盘分区.文件系统.使用情况的命令和相关工具介绍><实例解说 fdisk 使用方法><合理规划您的硬盘分区><Fe ...

  4. linux ext2 文件系统学习

    Linux  ext2文件系统理解 硬盘组成: 硬盘由多个圆形硬盘片组成.按照硬盘片能够容纳的数据量分为单盘和多盘.硬盘的数据读取主要靠机械手臂上的磁头,在机械手臂上有多个磁头.机械手臂不动硬盘旋转一 ...

  5. linux下文件系统类型的学习

    1. 以超级用户权限登陆Linux,进入  /lib/modules/2.6.32--504.el6.x86_64/kernel/fs目录执行 ls 命令(不同Linux发行版本的Fs目录有些不同你可 ...

  6. Linux根文件系统的制作

    转载:http://www.cnblogs.com/hnrainll/archive/2011/06/09/2076655.html 1. 根文件系统 文件系统是包括在一个磁盘(包括光盘.软盘.闪盘及 ...

  7. linux的文件系统及节点表

    linux的文件系统及节点表 一  linux的文件系统1 我们都知道当我们安装linux时会首先给系统分区,然后我们会把分区格式化成EXT3格式的文件系统.那么在linux系统中还有没有其他的文件系 ...

  8. linux虚拟文件系统2

    转自:http://rstevens.iteye.com/blog/849413 一.概述 Linux 文件系统是相当复杂的,本文只分析虚拟文件系统的实现,对具体的文件系统不涉及. 即使是虚拟文件系统 ...

  9. 【转】完美解读Linux中文件系统的目录结构

    一.前 言 接触Linux也有一段时间了,不过这几天在编译开源程序时,才发现自己对linux文件系统的目录结构了解的不够透彻,很多重要目录都说不清楚是用来干嘛的,于是在网上百度了一下这方面的介绍,根据 ...

随机推荐

  1. 修改CentOS服务器时间为北京时间

    购买了VPS,CentOS系统,发现服务器时间与北京时间往往不一致,存在时差. [clive@server workspace]$ date 2018年 05月 30日 星期三 02:02:47 UT ...

  2. 08-HTML-框架标签

    <html> <head>  <title>框架标签学习</title>  <meta charset="utf-8"/> ...

  3. Django的URL路由系统

    一. URL配置 URL配置就像Django所支撑网站的目录.它的本质是URL与要为该URL调用的视图之间的映射表.你就是以这种方式告诉Django,对于哪个URL调用的这段代码. 基本格式 from ...

  4. loj#6032. 「雅礼集训 2017 Day2」水箱(并查集 贪心 扫描线)

    题意 链接 Sol 神仙题+神仙做法%%%%%%%% 我再来复述一遍.. 首先按照\(y\)坐标排序,然后维护一个扫描线从低处往高处考虑. 一个连通块的内状态使用两个变量即可维护\(ans\)表示联通 ...

  5. js匹配字符串

    lastIndexOf() 方法可返回一个指定的字符串值最后出现的位置,在一个字符串中的指定位置从后向前搜索 var str = 'Hello World' str.lastIndexOf('Hell ...

  6. 22.Odoo产品分析 (三) – 人力资源板块(3) – 休假管理(1)

    查看Odoo产品分析系列--目录 安装休假管理模块,出现"休假"菜单:  休假管理为了更方便直观的看出员工的休假信息,将信息以日历视图显示出来.  在日历中点击某一天时,可以创建改 ...

  7. Python入门:内置函数

    可创建一个整数列表,一般用在 for 循环中. 函数语法 range(start, stop[, step]) 参数说明: start: 计数从 start 开始.默认是从 0 开始.例如range( ...

  8. Android Studio手动打包

    项目写完了,现在需要把应用上传到市场上面,那么怎么把项目打包成apk?(Android的可安装文件). 1. 创建签名文件 2. 填写好签名参数 3. 生成APK 注意:签名的密码和密匙的密码注意保管 ...

  9. python--文件流读写

    在讲述fileinput模块之前,首先说一下python内置的文件API—open()函数以及与其相关的函数. 我这里主要讲讲其中四个比较重要和常用的方法,更多的方法,可以参考:菜鸟教程http:// ...

  10. tkinter进阶版——ttk

    很长的一段时间里,我都是用tkinter进行GUI设计的,还写过一篇<tkinter模块常用参数>. 但后来慢慢地觉得,这个tkinter真的是有点丑啊. 于是,找到了现在的ttk. tt ...