Linux文件和目录管理
1、 目录的相关操作
. 表示此层目录
.. 表示上一层目录
- 表示前一个工作目录
~ 表示“当前用户身份”所在的家目录
1) 切换目录 cd
如:cd ~dmtsai 去dmtsai的家目录
cd ~ 回到中间的家目录(等同于cd)
cd- 回到刚才的目录
2) 显示当前所在的目录
pwd [-P] (print work directory)
-P:获取正确的目录名,而不是以连接文件的路径来显示
3) 建立新目录
mkdir [-mp] 目录名
-m:设置文件权限,否则按默认权限
-p:直接建立所需目录的递归
4) 删除空目录
rmdir [-p] 目录名
-p:与上层空目录一起删除
若目录下有文件或目录,则要用rm来删除
5) 执行文件路径的环境变量:$PATH
echo $PATH 显示当前的PATH(echo:显示,$:表示后面跟的是变量)
PATH = “$PATH”:/root 将/root路径添加到PATH中
2、 管理文件和目录
1) 查看文件和目录:ls
ls [-aAdfFhilRS]目录名
ls [--color={none|auto|always}] [--full-time] [--time={atime|ctime}]目录名
ls [--full-time]目录名 (以完整时间模式输出)
ls [--time={atime|ctime}]目录名
2) 复制文件或目录
cp [-adfilprsu] <src> <dst>
cp [-adfilprsu] <src1 src2 …> <dst> (将多个源文件复制到一个目标文件)
3) 删除文件或目录
rm [-fir] 文件或目录
rm –rf 目录 (强制删除目录下的所有文件和目录)
4) 移动文件或目录(可以重命名,重命名可用rename)
mv [-fiv] <src> <dst>
mv [-fiv] <src1 src2 …> <dst>
5) 获取路径的文件名和目录名
Basename 路径 (获取路径的文件名)
Dirname 路径(获取路径的目录名)
3、 查看文件内容
1) cat [-AEnTv] (由第一行开始显示文件内容)
2) tac (由最后一行开始显示文件内容)
3) nl [-bnw] 文件 (显示时添加行号)
4) more文件 (一页一页的向后显示文件内容)
5) less 文件 (一页一页的显示文件内容,可向前也可向后)
6) head [-n number] (取出前面几行)
7) tail [-n number] (取出后面几行)
8) od [-t TYPE] 文件 (读取二进制文件)
9) touch [-acdmt] 文件 (修改文件时间和日期,也可以建立一个空文件)
4、 文件与目录的默认权限与隐藏权限
1) 文件默认权限
umask [-S] (文件默认权限)
S: 以符号形式显示文件权限(显示的数值是默认值需要减掉的权限),否则以数字形式显示(先计算目录的权限,然后在目录权限的基础上计算文件的权限)
2) 文件隐藏属性
Chattr [+-=] [Asacdistu] 文件或目录名 (设置文件隐藏属性)
(最重要的是i属性,可让一个文件无法被更改)
Lsattr [-aR] 文件或目录 (显示文件隐藏属性)
3) 文件特殊权限
(1) Set UID (user):s t
(2) Set GID (group)s t
(3) Sticky Bit 只针对目录有效,对文件没效
(4) SUID/SGUID/SBIT权限设置
Chmod 权限数值 文件名
4) 查询文件类型
File 文件名
5、 搜索文件
1) which [-a] command (寻找执行文件)
2) whereis [-bmsu] 文件或目录名
3) locate 文件名 (模糊查找)
4) find [PATH] [option] [action]