- 比较特殊的目录:
.
代表此层目录
..
代表上一层目录
-
代表前一个工作目录
~
代表目前用户身份所在的家目录1
~account
代表account这个用户的家目录
- 几个常见的处理目录的指令:
cd
:变换目录(Change Directory)
pwd
:显示当前目录(Print Working Directory)
mkdir
:建立新目录(make directory)
- 默认情况下,mkdir必须一层一层的建立才行,
-p
选项则可以直接将所需的目录递归建立起来。-m
用于手动设置新建目录的权限。
rmdir
:删除空的目录
- 默认情况下,目录的删除也需要一层一层删除,而且必须是空的目录,
-p
可以递归删除,但是也只能删除空的目录。rm -r
则可以强制删除非空目录,不过需要谨慎使用。
文件与目录管理
1. 文件与目录检视:ls
2. 复制文件或目录:cp
3. 移除文件或目录:rm
4. 移动文件或目录,或更名
- 参数
-u
可以用来测试新旧文件,看看是否需要搬移。 - 使用
mv
不仅可以移动文件,还可以变更文件名。
文件内容查阅
cat
:由第一行开始显示文件内容tac
:从最后一行开始显示,可以看出tac是cat的倒着写nl
:显示的时候,在左侧显示行号more
:一页一页的显示文件内容,但只能向后翻页less
:与more类似,并增加可以往前翻页的功能head
:只看头几行tail
:只看尾巴几行od
:以二进制方式读取文件内容
1. 直接检视文件内容
可以使用cat
、tac
、nl
这几个指令。
2. 可翻页检视
more
:
- 空格键:向下翻一页
- 回车键:向下翻一行
- /字符串:在这个显示的内容中,向下搜寻/后字符串的关键词
- q:离开more,不再显示该文件内容
- b或ctrl-b:往回翻页,不过这个动作只对文件有用,对管线无用
less
:
- 空格键:向下翻动一页
- pagedown:向下翻动一页
- pageup:向上翻动一页
- /字符串:向下搜索字符串的功能
- ?字符串:向上搜索字符串的功能
- n:重复前一个搜寻
- N:反向的重复前一个搜寻
- q:离开less程序
3. 首尾数据截取
head
:取出前面几行
-n后面的参数如果是负数,如上面范例的-n -100
,代表显示最后100行之前的内容。
tail
:取出后面几行
- 范例一中的
-n +100
表示从该文件的100行开始显示。
修改文件时间或建置新档:touch
文件与目录的默认权限与隐藏权限
文件预设权限:umask
1. 查看默认权限:
- 输入
umask
可以看到数字形态的权限设定分数 - 输入
umask -S
则会以符号形式显示出来 - 要注意的是,umask表示的是该默认值需要减掉的权限!
2. 文件隐藏属性
chattr
:配置文件隐藏属性
lsattr
:显示文件隐藏属性
3. 特殊权限:SUID,SGID,SBIT
- Set UID:
当s这个标志出现在文件拥有着的x权限上时,就被称为Set UID。
- SUID权限仅对二进制程序有效;
- 执行者对于该程序需要具有x的可执行权限;
- 仅在执行该程序过程中有效;
- 执行者将具有该程序拥有者的权限。
- Set GID:
当s标志在群组的x权限时,被称为SGID。
- SGID对二进制程序有用;
- 程序执行者对于该程序需要具有x的可执行权限;
- 执行者在执行过程中会获得该程序群组的权限。
- Sticky Bit:
SBIT只针对目录有效。
- 用户需要对于此目录具有w,x权限;
- 当用户在该目录下建立文件或目录时,仅有自己与root才有权利删除该文件。
- SUID/SGID/SBIT权限设定:
同r、w、x的数字表示权限方式相同:
4为SUID
2为SGID
1为SBIT
命令与文件的查询
-
which(寻找 执行档)
-
whereis(在一些特定的目录中寻找文件名)
-
find
普通用户的家目录为
/home/account/
,root的家目录则是/root/
↩︎