文件、目录管理
文件
-
文件类型
-:普通文件,文本、二进制档、数据格式文件d:目录b:块文件,硬盘、软盘c:字符文件,键盘、鼠标l:软链接文件s:套接口文件
-
后缀名
- Linux中,后缀名与文件类型无关,仅用于文件命名以区分文件类型,常见后缀名有:
.sh:脚本*.Z、*.tar、*.tar.gz、*.zip、*.tgz:压缩文件*.html、*.php:网页文件
- Linux中,后缀名与文件类型无关,仅用于文件命名以区分文件类型,常见后缀名有:
-
文件时间
modification time(mtime): 文件内容变更时更新的时间status time(ctime): 文件权限/属性变更时更新的时间access time(atime): 文件读取(查看)时更新的时间
目录
-
目录命令规范: 长度不超过256字符、不能用”/“作为名字、严格区分大小写
-
绝对/相对目录: 绝对路径需要以根目录为起点,相对路径以当前目录为起点
-
PATH: 环境变量,用于指定搜索命令的路径;系统通过PATH找到指令文件以执行命令,若匹配到多个路径时只选择最先匹配的路径
-
目录含义
/bin、/sbin
1. /bin:存放所有用户可以执行的指令
2. /sbin:存放系统开机、修复、还原的指令,只有root才能使用/boot- 存放开机过程中使用的配置文件
/dev、/media、/mnt- /dev:挂载硬件设备文件的目录
- /media:媒体,挂载可移除设备的目录
- /mnt:挂载暂时使用的额外设备
/etc- 存放系统主要配置文件
/lib、/lib64- 函数库,用于存放系统运行、/bin、/sbin指令的共用函数库,指令执行调用函数以正常运行;/lib存放32位的函数库(/lib64指存放64位的函数库)
/opt- 存放第三方大型软件,该软件独立且不依赖系统库
/run- 存放系统/程序运行的临时文件
/proc、/sys- 虚拟文件系统,/proc为存放系统提供服务的数据文件;/sys为存放系统和硬件信息文件
/home、/root- /home:存放非root用户的主目录,/root为root的主目录(独立到根目录中)
- 工作目录:是指CLI下工作的目录,默认进入CLI后的目录为home目录
- home目录:存放个人用户文件的根目录,如root的home目录为/root
/usr- unix software resource:unix系统软件资源,存放系统默认程序/软件
- 次目录
- /usr/bin、/usr/sbin、/usr/lib:这些目录才是所有指令和函数库的存放位置,而根目录的/bin、/sbin、/lib都会链接到这些目录
- /usr/local:存放用户自行安装的指令
- /usr/share:存放不依赖CPU的文件(静态资源),如文件、图片
/var- 存放可变数据文件,如日志、应用缓存
用户管理
权限
-
用户权限
- 类型: 拥有者(user)、群组(gruop)、其他组(other)
- 记录文件: /etc/passwd(账号)、/etc/shadow(密码)、/etc/group(群组)
-
默认、隐藏权限
- 默认权限: 表示当前用户创建文件/目录后的默认权限值,默认文件最大权限为
666(防止病毒文件自动执行),目录最大权限为777 - 隐藏权限
- SUID、SGID、SBIT
- SUID
- 仅对可执行文件有效,允许其他用户借用该文件的拥有者的权限来执行该文件
- 拥有者必须有x权限再添加SUID才会生效
- SGID
- 允许其他用户借用文件/目录的所属组的权限来执行该文件/目录
- SGID对目录、可执行文件有效,拥有者必须有x权限再添加SGID才会生效
- 只有父目录有SGID权限,子目录才会继承权限
- SBIT
- Sticky Bit: 仅对目录有效,作用在其他组位置,只有拥有者和root才能对该目录下的文件/目录进行删除
- 目录必须有x权限再添加SBIT才会生效
- 注意: 若权限为s、t则表示权限生效;若是大写S、T则表示文件/目录没有x权限,SUID/SGID/SBIT不生效
- SUID
- 默认权限: 表示当前用户创建文件/目录后的默认权限值,默认文件最大权限为
属性
- 格式:
类型拥有者权限群组权限其他组权限 - 文件类型:
-、d、b、l - 权限:
r(可读)、w(可写)、x(可执行)、-(无权限)
操作命令
目录常规命令
pwd
- 定义 :Print Word Directory,用于查看当前工作目录路径
- 语法
pwd
cd
- 定义 :Change Directory,切换工作目录
- 语法
cd[目录]- 符号
.表示当前目录,..表示上一级目录-表示回到上一个工作目录,~表示回到用户的家目录
- 举例
cd ../crom
# 返回上一级目录并进入crom目录内
mkdir rmdir
- 定义 :make/remove directory创建/删除目录
- 语法
mkdir/rmdir[option] [dirtectory]- 选项
-p:递归处理所有子文件
文件常规命令
touch
- 定义 :change file timestampstouch,修改文件时间戳,可用于创建文件(文件不存在时,会创建空文件)
- 语法
touch[option] [file]- 选项
-a-m:修改atimemtime时间为当前时间-d:修改时间的日期-t:指定修改的时间,格式为YYYYMMDDhhmm,如202503031533
文件、目录管理
查看文件/目录信息
ls
-
定义:list dirtectory contents,列出目录内容
-
长数据串
- 字段 :[权限] [链接] [拥有者] [群组] [文件大小] [修改日期] [文件名]
- [日期] :显示月、日、时间,若修改时间离现在时间很久则显示月、日、年,3若要完全显示时间格式(年、月、日、时间)则加入参数
--full-time - [文件名] :开头为
.的文件为隐藏文件
-
语法
ls[option] [file]- 选项
-a:all,显示所有文件(含隐藏文件)-l:以长数据串列出文件信息-t:按时间顺序列出文件--full-time:以完整时间模式列出文件
file
- 定义 :查看文件类型,可用于查看压缩文件的压缩格式
- 语法
file[file]
which
- 定义 :根据
PATH(环境变量)找到可执行文件(指令)的所在路径 - 语法
which[option] [command]- 选项
-a:将PATH所有能匹配上的指令的路径都列出
whereis
- 定义 :从特定目录下查找文件/目录的路径
- 特定目录 :
/usr/bin/usr/share/usr/src
- 特定目录 :
- 语法
whereis[option] [file/dirtectory]- 选项
-l:查看whereis在哪些特定目录下查找-b/m/s:在/usr/bin/usr/share/usr/src目录下查找路径-u:不在/usr/bin/usr/share/usr/src查找路径
find
- 定义 :在指定的目录下查找路径,该指令会从目录下一个个匹配
- 语法
find[path] [option] [parameter]- 选项
-name:按文件名进行查询-iname:按文件名进行查询,且文件名不分大小写-type:按文件类型进行查询,如fdl
复制、删除、移动
cp
- 定义 :复制文件/目录
- 语法
cp[option] [src-dir/file] [des-dir/file]- 选项
-r:递归复制所有文件(复制目录树)-d:复制源链接文件的所有属性-p:复制源文件的所有属性-a:all,和-pdr同效果-f:强制复制,若不加该参数则复制时需要二次确认-l、-s:-l表示复制为硬链接,-s表示复制为软链接-u:目的文件不存在,或者目的比源文件旧才会复制,适用于备份
rm
- 定义 :remove,删除文件/目录
- 语法
rm[option] [file/dir]- 选项
-f:强制删除,若不加参数则删除时需要二次确认-i:默认选项,删除时提示二次确认-r:删除整个目录树
mv
- 定义 :move,移动或者重命名文件/目录
- 语法
mv[src-dir/file] [des-dir/file]
文件内容查看
cat
- 定义 :concatenate,连接文件并输出文件内容
- 语法
cat[option] [file]- 选项
-n:列出行号,包括空行
more
- 定义 :以翻页形式显示文件内容
- 语法
more[file]- 指令
空白键、ctr+b:向下、上翻页enter:向下翻一行/字符:向下查找该字符q:退出
less
- 定义 :比
more灵活,可以前后翻页 - 语法
less[file]- 指令
空白键:向下翻页pagedown/pageup:向下/上翻页/字符、?字符:向下、上查找字符n/N:向上/下查找/?指令的字符g/G:到第一行/最后一行q:退出
用户管理
修改权限
chgrp
- 定义 :change group,修改目录/文件的群组
- 语法
chagrp[option] [group-name] [file/dir]- 选项
-R:递归处理所有子文件/目录
chown
- 定义 :change owner,修改文件/目录的拥有者/群组
- 语法
chown[option] [ user | user:group ] [file/dir]- 选项
-R:递归处理所有子文件/目录
chmod
- 定义 :修改文件/目录的权限
- 权限
- 文件 :
rwx表示查看、修改和执行文件内容 - 目录 :
r表示读取文件名、w表示修改文件名、x表示进入目录权限
- 文件 :
- 语法
- 数字格式
- 数值 :
r-> 4、w-> 2、x-> 1;数值可累加,如rwx-> 7、r-x-> 5- SUID/SGID/SBIT :
SUID-> 4、SGID-> 2、SBIT-> 1,数值可以累加且修改时要放在rwx前面,如SUIDrwxrwxrwx-> 4777、SUIDSGIDrwxrwxrwx-> 6777
- SUID/SGID/SBIT :
- 语法
chmod[-R] [xyz] [file/dir]- [xyz] :表示拥有者、群组、其他人权限数值
- 数值 :
- 符号格式
- 符号
- 对象 :
u-> user、g-> group、o-> other、a-> all - 动作 :
+-= - 权限 :
rwxst
- 对象 :
- 语法
chmod[-R] [对象] [动作] [权限] [file/dir]
- 符号
- 数字格式
chmod u=rwx,g=rx,o=r filename
chmod a-x filename