Linux之文件与目录管理
-
why
Linux中一切都是文件,甚至目录也可以说是一个文件;所以对文件与目录的管理是非常重要的
1、相对与绝对路径
相对当前工作目录的路径
| 相对路径 | 切换目录更加方便,但是不适合用于写shell,因为环境不同会导致问题 |
| 绝对路径 | 写shell务必使用 |
2、特殊目录
| . | 当前目录 |
| .. | 上一级目录 |
| ~ | 用户主文件夹 |
| - | 前一个工作目录 |
| ~account | account用户的主文件夹 |
3、操作目录与文件命令
mkdir [-mp] dir
rmdir -p dir
ls [-adl]
cp source des 或者 cp source1 source2 dir
| 保留source文件属性 | -a(pdr) -p |
| source是否为软链接 | -s -l |
| source是否为特殊文件 | |
| source是否为目录 | -r(可能会改变目录的属性)-a(不会改变属性) |
rm [-fir]
mv [-fiu] source des
4、环境变量$PATH
| 作用 | 当在任何目录下执行ls命令时,都是在$PATH变量中一一匹配的;不同用户变量也是不同的 |
| 修改 | PATH="$PATH":/root |
使用绝对路径来执行命令更准确;
本目录(.)最好不要放入PATH当中;
5、获得路径中的文件名与目录名
basename
dirname
6、文件内容查看
| cat | -nb无空格和有空格时输出number |
| tac | 反向输出 |
| less | 可以向上翻页 |
| more | 只能向下翻 |
| head | 对输出截取 |
| tail | -f持续监测后面所接的档名 |
| nl | 对行号做的处理比较多 |
| od | 非纯文本 |
7、文件三个时间
ls -l --time=ctime file
| mtime | 文件内容改变时间 |
| ctime | 文件权限改变时间 |
| atime | 文件访问时间 |
8、修改文件时间
touch两个作用:创建文件,修改文件mtime和atime
touch -d 想修订的日期
touch -t YYYYMMDDhhmm
9、默认权限
文件最大权限是666,目录最大权限是777,减去umask就是默认权限了。
umask默认:
| root | 0022 |
| user | 0002 |
例如umask为0003(即去掉wx权限),则文件默认权限是664,目录默认是774;
10、隐藏属性
chattr [+-=] [ai] file/dir
lsattr
11、文件搜索
| which | 根据path变量来进行查询“执行文件”的文件名 |
| whereis | 查看程序名的搜索 |
| locate | 配合数据库查看文件位置 |
| find | l |
find -a(and) -o(or)
| 时间 | (-mtime n) (-mtime +n) (-mtime -n) (-newer file) |
| 用户 | (-uid n) (-gid n) (-user name) (-group name) (-nouser) (-nogroup) |
| 权限 | (-name filename) (-size ) (-type) (-perm ) |
| 其他 | (-exec command) (-print) |
12、文件特殊权限

浙公网安备 33010602011771号