文件管理概述
创建 复制 移动 删除 查看 编辑 压缩
系统的目录结构
在Linux中,所有的文件或者目录的起点或者顶点都是以/开始的
linux的目录结构就像是一个倒挂的树形结构
必知必会的目录及文件
-
/bin:
bin 是 Binaries (二进制文件) 的缩写, 这个目录存放着最经常使用的命令。 -
/sbin:存放系统命令的目录 需要管理员权限才可以执行的命令
-
/boot:
这里存放的是启动 Linux 时使用的一些核心文件,包括一些连接文件以及镜像文件。 -
/dev :
dev 是 Device(设备) 的缩写, 该目录下存放的是 Linux 的外部设备,在 Linux 中访问设备的方式和访问文件的方式是相同的。-
/dev/cdrom #光盘镜像 /dev/null #黑洞设备 将一些不用的数据导入到黑洞设备 /dev/zero #字符设备 会源源不断的产生数据,字符 /dev/random #产生随机数的设备 #磁盘设备及分区 /dev/sda /dev/sda1 /dev/sda2 /dev/sda3
-
-
/etc:
etc 是 Etcetera(等等) 的缩写,这个目录用来存放所有的系统管理所需要的配置文件和子目录。-
/etc/sysconfig/network-scripts/ifcfg-* #查看网卡配置文件 /etc/hosts# 本地域名解析文件 #记录ip地址与主机名的对应映射关系 /etc/resolv.conf #本地DNS配置文件 /etc/fstab #挂载设备目录配置文件 开机自启动挂载列表 /etc/hostname #主机名字配置文件
-
-
/home:
用户的主目录,在 Linux 中,每个用户都有一个自己的目录,一般该目录名是以用户的账号命名的,如上图中的 alice、bob 和 eve。 -
/lib:
lib 是 Library(库) 的缩写这个目录里存放着系统最基本的动态连接共享库,其作用类似于 Windows 里的 DLL 文件。几乎所有的应用程序都需要用到这些共享库。- /lib #库文件目录 32位库文件
/lib64 #库文件目录 64位库文件
- /lib #库文件目录 32位库文件
-
/lost+found:
这个目录一般情况下是空的,当系统非法关机后,这里就存放了一些文件。 -
/media:
linux 系统会自动识别一些设备,例如U盘、光驱等等,当识别后,Linux 会把识别的设备挂载到这个目录下。 -
/mnt:
系统提供该目录是为了让用户临时挂载别的文件系统的,我们可以将光驱挂载在 /mnt/ 上,然后进入该目录就可以查看光驱里的内容了。 -
/opt:
opt 是 optional(可选) 的缩写,这是给主机额外安装软件所摆放的目录。比如你安装一个ORACLE数据库则就可以放到这个目录下。默认是空的。 -
/proc:
虚拟可变的目录 记录了系统的实时状态-->类似于汽车的仪表盘
-
/root:
该目录为系统管理员,也称作超级权限者的用户主目录。 -
/sbin:
s 就是 Super User 的意思,是 Superuser Binaries (超级用户的二进制文件) 的缩写,这里存放的是系统管理员使用的系统管理程序。 -
/selinux:
这个目录是 Redhat/CentOS 所特有的目录,Selinux 是一个安全机制,类似于 windows 的防火墙,但是这套机制比较复杂,这个目录就是存放selinux相关的文件的。 -
/srv:
物理设备所产生的一些文件 -
/sys:
物理设备的驱动信息文件
这是 Linux2.6 内核的一个很大的变化。该目录下安装了 2.6 内核中新出现的一个文件系统 sysfs 。
sysfs 文件系统集成了下面3种文件系统的信息:针对进程信息的 proc 文件系统、针对设备的 devfs 文件系统以及针对伪终端的 devpts 文件系统。
该文件系统是内核设备树的一个直观反映。
当一个内核对象被创建的时候,对应的文件和目录也在内核对象子系统中被创建。
-
/tmp:
公共临时目录 公共场所 只能针对自己的文件进行操作 系统会定时的删除这个目录下长时间没有访问的文件 -
/usr:
/usr #系统目录 系统文件目录 跟windows目录一样
/userlocal #系统软件安装目录 跟windows的一样 -
/usr/bin:
系统用户使用的应用程序。 -
/usr/sbin:
超级用户使用的比较高级的管理程序和系统守护程序。 -
/usr/src:
内核源代码默认的放置目录。 -
/var:
这是一个非常重要的目录,系统上跑了很多程序,那么每个程序都会有相应的日志产生,而这些日志就被记录到这个目录下,具体在 /var/log 目录下,另外 mail 的预设放置也是在这里。
/var/log #系统日志存放目录 /var/log/messages #系统级别日志 /var/log/secure #用户登录日志 /var/tmp #程序运行时所产生的一些进程文件
-
/run:
是一个临时文件系统,存储系统启动以来的信息。当系统重启时,这个目录下的文件应该被删掉或清除。如果你的系统上有 /var/run 目录,应该让它指向 run。
在 Linux 系统中,有几个目录是比较重要的,平时需要注意不要误删除或者随意更改内部文件。
/etc: 上边也提到了,这个是系统中的配置文件,如果你更改了该目录下的某个文件可能会导致系统不能启动。
/bin, /sbin, /usr/bin, /usr/sbin: 这是系统预设的执行文件的放置目录,比如 ls 就是在 /bin/ls 目录下的。
值得提出的是,/bin, /usr/bin 是给系统用户使用的指令(除root外的通用户),而/sbin, /usr/sbin 则是给 root 使用的指令。
-
stderr -> /proc/self/fd/2 #错误输出2>
stdin -> /proc/self/fd/0 #标准输入<
stdout -> /proc/self/fd/1 #标准输出>
路径的定位
#包含整个文件名称及文件的位置 这样的定位称之为路径
#路径就是对于文件的定位的一种方式
#每个目录下都有一个.和..
. #表示的是当前所在的目录
.. #当前目录的上一级目录
./ #用于表示当前目录
../ #从当前目录的上一级目录开始
#什么是决定路径 什么是相对路径
#绝对路径: 凡是以/开始的路径就是绝对路径 或者以~为开头的路径也是绝对路径
#相对路径: 不是以/开头的路径就是相对路径 针对当前路径而言的
文件管理基础命令
pwd
显示当前工作目录的绝对路径,通俗点就是:告诉我,你在哪里
cd
切换路径,没有什么选项可用
[root@localhost ~]# cd #直接切换到当前用户的家目录,等价于cd ~
[root@localhost ~]#
[root@localhost ~]# cd .
[root@localhost ~]# cd ./ #保持当前目录不变
[root@localhost usr]# cd ./local/
[root@localhost local]# pwd
/usr/local
[root@localhost local]# cd ../etc/ #进入当前目录的上一级目录/user/etc
[root@localhost etc]# pwd
/usr/etc
cd - 切换到上一次所在的目录,快速的到达上一次的命令
ls
显示文件或者目录的列表信息 相当于windows双击一次打开目录
#常用选项
-l #以长格式显示文件的详细信息
-i #显示文件或者目录的inode信息
-h #以字节大小的形式显示文件的大小
-a #显示所有的文件,隐藏文件,所有以点开头的文件就是隐藏文件
-S #以文件大小进行排序
-t #根据时间进行排序,最新的时间在最上面
-r #倒序
-F #给不同的文件加上不同的标识符
/ #目录
* #可执行文件
= #表示的是套接字文件 socket文件
| #管道文件
-1 #以行的形式显示文件的名称
tree
以树状形式显示目录列表,默认不显示隐藏文件
#常用选项
-a #显示所有文件或者目录 隐藏文件
-d #只显示目录的数量和信息
-h #显示所有文件的大小
-F #给不同类型的文件加上标识符
/ #目录
* #可执行文件
= #表示的是套接字文件 socket文件
| #管道文件
-L+数字 #显示级别
mkdir
创建目录的命令
#常用参数
-p #创建出具有层级关系的目录,当目录已经存在的时候,不报错
-v #显示创建的过程,几乎很少加
-m #创建的时候设置权限
mkdir -m 700 data02
{} #生成序列 有规律和无规律,有规律用..分隔,无规律,分隔
mkdir test/data{01..10}#批量创建10个目录
mkdir test/oldboy-{a..g}
#无规律的用,分隔
touch
创建文件 创建空文件 当文件已经存在时,会改变文件的时间戳
在linux系统中,创建文件是会区分大小写的,可以区分a,A;在windows中不会区分大小写,不可能存在A,a一样的文件夹。
#参数
-a #修改读取时间(atime)
-m #修改修改时间(mtime)
-d #同时修改atime与mtime