Linux文件与目录管理
目录
相对路径与绝对路径
相对路径 较为方便
绝对路径较为正确与安全
Linux下 特殊的目录:
. : 代表此层目录
.. : 代表上一级目录
- : 代表前一工作目录
~ : 代表目前使用者身份所在的家目录
~account : 代表account这个使用者的家目录(account为账号名称)
目录相关操作
常见处理目录的命令 :
cd :切换目录
pwd : 显示当前目录
mkdir : 建立一个新目录
rmdir : 删除一个空目录
[Tab] : tab键补全目录路径
mkdir -m [文件权限 eg.711] 文件名 : 创建权限为711的文件
mkdir -p 全路径的目录名[eg. /home/dunk/test] : 创建指定的全路径的目录
当rmdir无法删除非空的目录时,可以使用 [rm -r 文件名]来删除指定的目录
文件与目录的查看:ls
-a : 全部文件,连同隐藏文件(开头为 .的文件)一起列出来
-A : 全部文件,连同隐藏文件,但不包括. 与 .. 则两个目录
-d : 仅列出目录本身
复制、删除和移动:cp/ rm / mv
cp -a : 文件所有属性全部复制
对于特殊权限的文件需要加上 -a或是 -p选项来进复制备份
mv [-u] 选项测试新旧文件,souce文件较被移动的文件新时,不覆盖,反之,则覆盖
mv 操作的另一个作用就是修改文件名
获取路径的文件名与目录名称
basename : 获取路径中最后的文件名
dirname : 获取路径的目录名
文件内容查看
查看文件内容的命令如下:
cat: 由第一行开始显示文件内容
tac:从最后一行开始显示,可以看出tac是cat的倒写
nl : 显示的时候,同时输出行号
more : 一页一页的显示文件内容
less与more类似,但是比more更好的是,它可以往前翻页
head 只看前面几行
tail 只看后面几行
od 以二进制的方式读取文件内容
cat查看文件内容的命令
-n :选项
可翻页查看
more翻页查看命令
空格键 : 代表向下翻页
Enter : 代表向下翻一行
/字符串 : 代表在这个显示的内容当中,向下查找字符串这个关键词
:f : 立刻显示文件名及目前显示的行数
q : 代表立刻离开more,不再显示该文件内容
b 或 [ctrl]-b :代表往回翻页
less 翻页查看选项
空格键 : 向下翻动一页
[pagedown] : 向下翻动一页
[pageup] : 向上翻动一页
/字符串 : 向下查找字符串的功能
?字符串 : 向上查找字符串的功能
n : 重复前一个查找(与/ 或 ? 操作有关)
N : 反向重复前一个查找(与/或?有关)
g : 前进到这个数据的第一行
G : 前进到这个数据的最后一行去(注意大小写)
q : 离开less这个程序
man page就是调用less命令来显示说明文件的,因此less很重要
数据截取
head 和 tail是以行为单位进行截取的
head
head [-n number] 文件名 : 表示显示文件中前number行的内容
默认是显示前十行
tail(取出后面几行)
tail [-n number] 文件名 : 表示显示文件中前number行的内容
tail -f 文件名 :刷新显示文件内容
非纯文本文件
od [-t TYPE] 文件 : 以TYPE类型显示文件内容
TYPE : a 利用默认的字符来输出
c 使用ASCII字符来输出
d[size] 利用十进制来输出数据,每个整数占size Bytes
修改文件时间或创建新文件
touch 命令最长被使用的场景:
- 建立一个空文件
- 将某个文件日期自定义为目前(mtime与atime)
文件默认权限
umask 查看指定目前用户在创建文件或目录时的权限默认值
这个默认的数字代表需要被减掉的权限值
例如: 0022 为 umask值, 默认情况下 用户创建文件权限最大值为666,所以此时建立文件的
权限值为644
ll == ls -l
若需要对默认权限进行修改: umask [权限数值]
文件隐藏属性
chattr:配置文件属性
lsattr: 显示文件属性
文件特殊权限
SUID:
- SUID权限仅对二进制程序有效
- 执行者对于该程序需要具有x的可执行权限
- 本权限仅在执行该程序的过程中有效
- 执行者将具有该程序拥有者的权限
SGID:
文件
- SGID对二进制程序有用
- 程序执行者对于该程序来说,需具备x的权限
- 执行者在执行的过程中将会获得该程序用户组的支持
目录 :
用户若对于此目录具有r与x的权限时,该用户能够进入此目录
用户在此目录下的有效用户组将会变成该目录的用户组
用途:若用户在此目录下具有w的权限,则用户所建立的新文件,该新文件的用户组与此目录的用户组相同
SBIT:
当用户对于此目录具有w、x权限,即具有写入权限
当用户在该目录下建立文件或目录时,仅有自己与root才有权删除该文件
当需要配置文件权限为SUID、SGID和SBIT时,此时使用数字形式修改权限的做法较佳(做法是在原本权限的数字形式前加上以下的权限数字,eg. chmod 4755 filename)
- 4 为 SUID
- 2 为SGID
- 1 为 SBIT
示例:
观察文件类型:
脚本文件的查找
which 查找执行文件
文件的查找
whereis :特定目录下文件查找
locate/updatedb :
locate 在数据库中进行查找,在进行查找前务必进行 updatedb操作对数据库进行更新
find :
find [path] [option] [action]
find 额外操作选项: -exec
find 指令还支持通配符查找
eg. Find /etc -name '*httpd*'
find指令很强大,唯一的不足是比较耗时