首页 > 代码库 > Linux文件与目录管理
Linux文件与目录管理
绝对路径与相对路径:
目录及其相关操作:
. 代表此层目录
..代表上一层目录
- 代表前一个工作目录
~ 代表目前用户身份所在的主文件夹
1.cd 切换目录
eg:cd ..
2.pwd [-p] 显示目前所在目录,-P代表不使用链接路径
3.mkdir 新建新目录
-m 配置文件权限 -P 地柜创建目录
eg: mkdir test
mkdir -p test1/test2/test3/test4
mkdir -m 711 test2
4.rmdir [-p]
删除空的目录,-p表示连同上层空的目录一同删除
5.rm -r test
将 test目录下的东西都删除
$PATH:
文件与目录管理:
查看文件与目录ls:
ls [-aAdfFhilnrRSt] 目录名称
ls [--color={never,auto,always}] 目录名称
ls [--full-time] 目录名称
参数:-a 全部文件,连同隐藏文件一起列出来
-d 仅列出目录本身,不列出目录内的文件数据
-l 列出长数据串,包含文件属性及权限等
eg:ls -al ~ 主文件夹下所有文件
PS:与文件的属性和权限有关的数据放在i-node里。
复制、删除与移动cp,rm,mv:
cp [-参数] source destination
-a 相当于-pdr将文件属性一起复制
-i 若目标文件已经存在,覆盖时先询问
-r 递归持续复制
PS:无参数时复制会改变文件权限
rm [-fir] 文件或目录 删除文件或目录
-f 忽略不存在的文件,不会出现警告
-i 互动模式,在删除前询问用户是否操作
-r 递归删除
mv [-fiu] source destination 移动文件与目录,或更名
-f:force强制的意思,如果目标已经存在,不会询问而且会直接覆盖
-i:若目标文件已经存在时,就会询问是否覆盖
-u:若目标文件已经存在,而且source比较新,才会更新(update)
eg: cp ~/.bashrc bashrc1
cp ~/.bashrc bashrc2
mv bashrc1 bashrc2 mvtest2
取得路径的文件名与目录名称:
eg: basename /etc/sysconfig/network
dirname /etc/sysconfig/network
文件内容查阅:
a.直接查看文件内容,可以使用cat/tac/nl几个命令
cat [-AbEnTv]
-n 打印出行号,连同空白行也会出现行号
-b 空白行不打印行号
eg:cat -n /etc/issue
tac /etc/issue
反向显示
nl [-bnw] 文件
添加行号打印
b.可翻页查看
more /etc/man.config 一页一页翻动
less /etc/man.config 一页一页翻动,包括可配合使用[page up]向上翻页
c.数据读取
head 取出前面几行
tail [-n number] 文件 取出后面几行
非纯文本文件:od
修改文件时间或者创建新文件:touch
modification time (mtime):
文件的内容数据变更时,就会更新这个时间!
status time (ctime):
文件的状态改变时,就会更新
access time(atime):
文件内容被取用时更新atime读取时间。
文件默认权限:unmask
预设权限:文件666 目录777
文件隐藏属性:
chattr 设置文件隐藏属性
lsattr 显示文件隐藏属性
文件特殊权限:SUID,SGID,SBIT
SUID:s出现在文件所有者权限的x上时,成为SUID,例如-rwsr-xr-x,其功能有
SUID仅对二进制程序有效
执行者对该程序需要具有x执行权限
本权限仅在该程序执行过程中有效
执行者将具有改程序所有者权限
SGID:s在用户组的x上时
SGID可以针对文件或目录设置,不仅对二进制程序有用
程序执行者对该程序要具有x权限
执行者在执行过程中需得到改程序用户组的支持
SBIT:只针对目录有效
当用户对此目录具有w,x权限时,具有写入权限时:
当用户在此目录下创建目录文件时,仅有自己与root才有权利删除该文件
大S,T,设置了特殊权限但是没有x权限时
查看文件类型:file 文件
命令与文件的查询:which 寻找”执行文件“
which根据用户所设置的PATH变量内的目录去查找可执行文件
/sbin不在vbird的PATH中
而且查找不到bash内置命令
文件名的查找:whereis
locate:
whereis locate是数据库查找
updatedb:更新数据库文件
find:
权限与命令间的关系: