Linux目录和Windows目录有着很大的不同,Linux目录类似一个树,最顶层是其根目录,如下图:
/
这就是根目录,一台电脑有且只有一个根目录,所有的文件都是从这里开始的。举个例子:当你在终端里输入“/home”,你其实是在告诉电脑,先从/(根目录)开始,再进入到home目录。
/root
系统管理员(root user)的目录。至于系统管理员的权限都多大我这里就不在废话了。因此,请小心使用root帐号。
/boot
系统启动文件,所有与系统启动有关的文件都保存在这里 。
/bin
bin是binary的缩写。这个目录沿袭了UNIX系统的结构,存放着使用者最经常使用的命令。例如cp、ls、cat,等等。
/lib
根文件系统目录下程序和核心模块的共享库。这个目录里存放着系统最基本的动态链接共享库,类似于Windows下的system32目录,几乎所有的应用程序都需要用到这些共享库。
/etc
主要存放了系统配置方面的文件。
/proc
这个目录是系统内存的映射,我们可以直接访问这个目录来获取系统信息。也就是说,这个目录的内容不在硬盘上而是在内存里。
/dev
这里主要存放与设备(包括外设)有关的文件(unix和linux系统均把设备当成文件)。另外还有一些包括磁盘驱动、USB驱动等都放在这个目录。
/sbin
s就是Super User的意思,这里存放的是系统管理员使用的系统管理程序,如系统管理、目录查询等关键命令文件。
/home
这里主要存放你的个人数据。具体每个用户的设置文件,用户的桌面文件夹,还有用户的数据都放在这里。每个用户都有自己的用户目录,位置为:/home/用户名。当然,root用户除外。
/tmp
这是临时目录。对于某些程序来说,有些文件被用了一次两次之后,就不会再被用到,像这样的文件就放在这里。因此,千万不要把重要的数据放在这里。
/srv
存储系统提供的服务数据。
/mnt
此目录主要是作为挂载点使用。通常包括系统引导后被挂载的文件系统的挂载点。如挂载Windows下的某个分区。
/usr
在这个目录下,你可以找到那些不适合放在/bin或/etc目录下的额外的工具。比如像游戏阿,一些打印工具等等。
/usr/bin目录用于存放程序;
/usr/share用于存放一些共享的数据,比如音乐文件或者图标等等;
/usr/lib目录用于存放那些不能直接运行的,但却是许多程序运行所必需的一些函数库文件。
你的软件包管理器会自动帮你管理好/usr目录的。
/opt
这里主要存放一些可选的程序。如你想尝试最新的firefox测试版吗?那就装到/opt目录下吧,这样,当你尝试完,想删掉firefox的时候,你就 可以直接删除它,而不影响系统其他任何设置。安装到/opt目录下的程序,它所有的数据、库文件等等都是放在同个目录下面。
usr/local
这里主要存放那些手动安装的软件,即不是通过“新立得”或apt-get安装的软件。它和/usr目录具有相类似的目录结构。让软件包管理器来管理/usr目录,而把自定义的脚本(scripts)放到/usr/local目录下面。
/var
用于存放很多不断变化的文件,例如日志文件等。包含了日志文件、计划性任务和邮件等内容。
/var/cache 应用程序缓存目录;
/var/crash 系统错误信息;
/var/games 游戏数据;
/var/log 日志文件;
/var/mail 电子邮件;
/var/tmp 临时文件目录;
/media
这个目录是用来挂载那些usb接口的移动硬盘(包括U盘)、CD/DVD驱动器等等。
顶
二 .文件系统概念
1。*nix系统中:一切皆文件;
2。文件
a. )文件的成分: 无论文件是一个程序、一个文档、一个数据库,或者是一个目录,操作系统都会赋予它如下所示的同样的结构:
◆索引节点 又称I节点,在文件系统结构中,包含有关相应文件的信息的一个记录,这些信息包括文件权限、文件主、文件大小、存放位置、建立日期等。
◆数据 文件的实际内容,它可以是空的,也可以非常大,并且有自己的结构。
b.) Linux系统区分文件名的大小写
以圆点“.”开头的文件名是隐含文件(dot files),默认方式下使用ls命令并不能把它们在屏幕上显示出来。同样,在默认情况下,Shell通配符并不匹配这类文件名。
c.) 文件名通配符
星号(*): 与0个或多个任意的字符相匹配
问号(?): 问号只与一个任意的字符匹配,可以使用多个问号
方括号([ ]) : 与问号相似,只与一个字符匹配。它们的区别在于,问号与任意一个字符匹配,而方括号只与括号中列出的字符之一匹配。例如letter [123]只与文件letter1、letter2或letter3匹配,但不与文件 letter12匹配。可以用短横线代表一个范围内的字符,而不用将它们一一列出。例如,letter[1-3]是letter[123]的简写形式。但 是,要注意范围内的字符都按升序排列,即[A-Z]是有效的,而[Z-A]是无效的。方括号中可以列出多个范围,如[A-Za-z]可以和任意大写或小写 的字符相匹配。方括号中如果以惊叹号“!”开始,表示不与惊叹号后的字符匹配。
文件类型
Linux操作系统支持普通文件、目录文件、特别文件及符号链接文件等文件类型。
1. 普通文件
普通文件也称作常规文件,包含各种长度的字节串。核心对这些数据没有进行结构化,只是作为有序的字节序列把它提交给应用程序。应用程序自己组织和解释这些数据,通常把它们归并为下述类型之一:
◆文本文件,由ASCII字符构成。例如,信件、报告和称作脚本(Script)的命令文本文件,后者由shell解释执行。
◆数据文件,由来自应用程序的数字型和文本型数据构成。例如,电子表格、数据库,以及字处理文档。
◆可执行的二进制程序,由机器指令和数据构成。例如,上面所说的系统提供的命令。
使用file命令可以确定指定文件的类型。该命令可以将任意多个文件名当做参数,其一般使用格式是:file 文件名 [文件名...]
2. 目录
目录是一类特殊的文件,利用它可以构成文件系统的分层树型结构。如同普通文件那样,目录文件也包含数据;但目录文件与普通文件的差别是,核心对这些数据加以结构化,它是由成对的“I节点号/文件名”构成的列表。
◆I节点号是检索I节点表的下标,I节点中存放有文件的状态信息。
◆文件名是给一个文件分配的文本形式的字符串,用来标识该文件。在一个指定的目录中,任何两项都不能有同样的名字。
每个目录的第一项都表示目录本身,并以“.”作为它的文件名。每个目录的第二项的名字是“..”,表示该目录的父目录。
应注意:以“.”开头的文件名表示隐含文件,使用带-a选项的ls命令可以列出它们。
当把文件添加到一个目录中的时候,该目录的大小会增长,以便容纳新文件名。当删除文件时,目录的尺寸并不减少,而是核心对该目录项做上特殊标记,以便下次添加一个文件时重新使用它。ls命令不会列出这些未被使用的项。
三 、Linux系统的文件系统路径
1。路径分为绝对路径和相对路径。
绝对路径是从/(也被称为根目录)开始的,比如/usr、/etc/X11。如果一个路径是从/开始的,它一定是绝对路径。
相对路径是以 . 或 .. 开始的,.表示用户当前操作所处的位置,而.. 表示上级目录;在路径中,.表示用户当前所处的目录,而..上级目录,要把.和..当做目录来看。
2。[root@localhost ~]# pwd 注:判断用户当前所处的位置,也就是说他到底位于哪?
use when you are lost.
3。
[root@localhost ~]# cd . 注:我们进入。
[root@localhost ~]# cd .. 注:我们切入/root的上级目录。
注意,cd之后有个空格。
4。~ 表示当前用户自己的家目录;
~USER 表示用户名为USER的家目录
如:
cd ~ 回到当前用户的家目录;
cd ~USERNAME 回到USERNAME用户的家目录;
四、绝对路径和相对路径
(1)用户主目录
当注册进入系统时,主目录就是当前工作目录。主目录往往位于/home目录之下,并且与注册名相同,例如,/home/mengqc。通常主目录包含子目录、数据文件,以及用于注册环境的配置文件。
什么情况下使用绝对路径名,什 么情况下使用相对路径名,取决于哪种方式涉及到的目录更少。路径短,不仅键盘输入少,而且节省系统搜索路径的时间,提高执行效率。例如,当前的工作目录是 /etc/conf/cf.d,如果需要访问系统口令文件/etc/passwd,那么使用绝对路径名是/etc/passwd,使用相对路径名是.. /../passwd。绝对路径名/etc/passwd涉及的目录有2个,而相对路径名../../passwd涉及的目录却是3个。此时,使用绝对路 径名更有效。
但是,如果当前工作目录是/home/mengqc/lib,要访问在 func目录之下的file1文件,那么使用绝对路径名是/home/mengqc/lib/func/file1,使用相对路径名是 func/file1。绝对路径名/home/mengqc/lib/func/file1涉及的目录有5个,而相对路径名涉及的目录只有2个。此时,使 用相对路径名更有效。
如果不清楚当前工作目录与其它目录之间的关系,那么最好使用绝对路径名。
http://www.linuxidc.com/Linux/2013-01/77368.htm
http://blog.csdn.net/xiong452980729/article/details/51329654
http://blog.sina.com.cn/s/blog_662234020101ebfd.html