本节概要
Linux基本文件概念
Linux目录结构
文件基本操作
环境准备
操作系统:Centos6.5
一、基本文件管理
1. Linux 文件概念
Unix系统中一切皆文件,如果不是文件则是进程,对于Linux系统来说同样适用。
Linux和Unix系统一样将文件和目录视为同物,因为目录只是一个包含了其他文件的文件而已,程序、服务、文本、图片等等,都是文件。对于系统来说,输入、输出设备等基本上所有的设备都被当做是文件。
2. Linux 文件系统
对于每一个Linux学习者来说了解Linux文件系统的目录结构是学好Linux的非常重要的一步,有必要对Linux文件目录的标准和每个目录的详细功能进行学习。
为方便管理文件,一般习惯将文件当做硬盘上的树状结构(下图纵向放置时即为树状结构)。
/ 一般称为根分区,是主层次的跟,也是整个文件系统层次结构的根目录,绝对路径即从此处开始。只有超级用户拥有此目录的写权限。不建议此目录中存放文件。
根目录下文件:
/bin 可执行二进制文件的目录。
/boot 存放引导程序文件,如kernel、initrd等
/dev 存放设备文件,如/dev/sda,/dev/null等。
/etc 存放配置文件,系统默认安装的服务配置文件一般在此目录下,也包含服务的管理脚本,如用户配置文件/etc/passwd,sshd服务管理脚本: /etc/init.d/sshd。
/home 普通用户的家目录,或根目录,存放普通用户的数据。
/lib 存放/bin/和/sbin/中二进制文件需要的库文件。
/mnt 用于临时挂载文件系统,如临时挂载光盘等文件系统。
/opt 用于存放用户自己的软件包。
/proc 以文件形式提供进程以及内核信息的虚拟文件系统。
/root root用户的家目录,存放管理员的数据。
/sbin 系统级的二进制文件,如ip,mount等。
/srv 系统提供的站点特定数据。
/tmp 存储临时文件,可以设置文件的清理周期,默认周期为1个月。
/usr usr全称为unix software source,用户存放用户自己安装的软件。
/var 存放各类文件,如一些随着系统常规操作而持续改变的文件,比如各种日志文件、临时的电子邮件等。
3. Linux 基本文件操作
cd
作用:切换路径
格式:cd 目的路径
举例:
cd /home #切换路径到/home
路径可以是绝对路径,也可以是相对路径。
touch
作用:新建空文件
格式:touch 文件名称
举例:
touch file1 #可以ls查看文件file1是否已经新建
mkdir
作用:新建目录
格式:mkdir 目录名称
举例:
mkdir dir1 #ls 查看dir1是否被新建
mkdir –p dir1/dir2/dir3 #-p 为递归创建,即路径中不存在的目录会被新建。
cat
作用:查看文件内容
格式:cat 文件名称
举例:
cat /etc/passwd
nl
作用:显示内容,带行号
格式:nl 文件名
举例:
nl /etc/passwd
more
作用:分屏显示文件内容
格式:more 文件名
举例:
more /etc/passwd
cat会一次性显示完文件的内容,如果文件内容较长需要多页才可显示完,需要看前面的信息时不方便,使用more可以分屏显示文件的内容。
回车显示一行,空格显示一屏,按q键退出。
less
作用:查看文件的内容,与more类似。
格式:less 文件名称
举例:
less /etc/passwd
回车显示一行,翻页使用方向键,空格也可向下翻页。
less 与more的区别是more不支持后退查看。
head
作用:查看文件的前n行,默认显示前10行。
格式:head 文件名称
head /etc/passwd #显示前10行
head –n 20 /etc/passwd #显示前20行
-n 显示的行数
tail
作用:从最后一行开始查看文件,默认显示最后10行。
格式:tail 文件名称
举例:
tail /etc/passwd #显示文件后10行
tail –n 20 /etc/passwd #显示后20行
tail –f /etc/passwd #动态显示文件的内容,常用于日志的查看。
-f 为动态显示
显示文件的第11行:
head –n 11 /etc/passwd | tail -1 #即前11行的最后一行
cp
作用:复制文件
格式:cp 源文件 目的文件
举例:
cp file1 file2 #文件拷贝
cp –r dir1 dir2 #拷贝目录
-r 递归拷贝,即连同目录内的文件也会进行拷贝。
mv
作用:移动文件、重命名文件
格式:mv 源文件 目标文件
举例:
mv file1 file2 #重命名文件
mv file1 /file2 #移动文件
rmdir
作用:删除空目录,当目录内有文件时不能进行删除。
格式:rmdir 空目录名称
举例:
rmdir dir1 #删除空目录
rm
作用:删除文件(目录)
格式:rm –rf 文件名
rm –rf file1 #删除文件,没有确认过程
-r 递归删除,如果删除的是目录会连同目录内的文件也删除调。
-f 强制删除,加上此参数后删除时不会有提示。
basename
作用:获取路径中的文件名
格式:basename 路径
举例:
basename /root/file1
dirname
作用:获取路径中的目录名。
格式:dirname 目录名
举例:
dirname /root/dir1/file1
dirname 不会对路径的真实性进行判断,即使路径不存在也不会报错。