文件管理
(1)查看文件信息
查看文件的权限(读写和执行)、文件所属用户和文件所属组、文件大小、文件创建时间、文件名称等
ls -lahF
l表示文件属性;F表示目录后面添加/;a表示显示隐藏的文件;h表示以友好的方式显示文件的大小
(2)文件类型
查看文件的属性:ls -lah每一行对应的第一个字符,即表示文件的属性
- 普通文件(-):如txt、pdf、doc等文件,都是普通文件,占绝大多数
- 目录文件(d):directory,内部是文件的集合
- 软链接文件(l):link,是其它文件的一个链接,相当于window的桌面快捷键
- 字符设备(c):char,以字符流的形式进行数据传输的设备,如控制终端、鼠标和键盘等
- 块设备(b):block,以数据块为单位进行数据传输的设备,如硬盘、闪存等
- 管道文件(p):pipe,用于进程之间进行通信的一种特殊文件,分为匿名管道和有名管道
- 套接字文件(s):socket,分为本地套接字和网络套接字,本地套接字用于实现主机上进程间的通信,网络套接字用于实现不同主机之间进程的通信
(3)文件的访问权限
在Linux中,对文件的访问权限控制主要是两种手段:用户类型和文件权限
A.用户类型
用户类型分为:文件的所有者、文件的所属组、其他人
可以通过文件的用户类型来设计该文件的访问权限,因此在Linux中文件的权限是按照用户类型来进行管理的,也就是说,文件所有者对文件的权限,文件所属组对文件的权限,其他人对文件的权限
B.文件权限
文件的权限分为:读(r)、写(w)、执行(x)
C.修改用户类型
修改文件的所有者、文件所属组
修改文件所有者: 将文件a.txt的所有者更改为zhangsan
sudo chown zhangsan a.txt
修改文件所属组:将文件a.txt的所属组更改为Group02
sudo chgrp Group02 a.txt
一次性修改文件所属组和文件所有者:将文件a.txt的所属组改为Group02,所有者改为zhangsan
sudo chown zhangsan:Group02 a.txt
(4)文件的压缩和解压
A.常见的压缩格式
在Linux中,常见的压缩格式包括:.tar.gz、.tgz、.tar.bz2、.zip、.rar、.tar.xz
B.Linux中默认的压缩工具
gzip和bzip2
C.How(如何文件的压缩和解压)
-
tar命令实现文件的压缩和解压
tar czvf target.tar.gz sourceFolder tar xzvf target.tar.gz -C /home/lorevin #使用gzip实现对文件压缩和解压
tar cjvf target.tar.bz2 sourceFolder tar xjvf target.tar.bz2 -C /home/lorevin #使用bzip2实现对文件压缩和解压
-
zip命令实现文件的压缩和解压
zip -r source.zip /home/lorevin unzip source.zip -d /home/lorevin #使用zip和unzip实现对文件压缩和解压
-
rar命令实现文件的压缩和解压
rar source.rar sourceFolder -r rar/unrar x source.rar #使用rar实现对文件压缩和解压
(5)文件的查找
A.find命令
用于查找指定目录下的文件名
find ./ -name "*.cpp" #查找当前目录下所有.cpp文件find ./ -type f/c/b/p/d/s #查找当前目录下所有的指定类型的文件find ./ -size -2M #查找当前目录下所有在0-2Mb的文件
B.grep命令
查找文件中的字符串
grep '#include' ./ -r -n -i >> b.txt
#查找当前目录下所有文件中包含字符串“#include”的行,
-r表示递归查询、-n表示显示行号、-i表示忽视大小写
C.locate命令
简化版的find,查询效率高(因为是基于系统数据库进行查询的)
sudo updatedb #更新本地数据库文件
locate test #查找所有以test开头的所有文件
locate /home/lorevin/test #查找指定目录/home/lorevin目录下的所有以test开头的文件
locate Test -i -n 5 -r '\.cpp$' #查找以“.cpp”结尾的前5个文件