较特殊的目录
可以使用cd命令跟下面这些目录
[.]
代表此目录[..]
代表上级目录[-]
代表前一个目录[~]
代表当前用户的家目录[~account]
代表account用户的家目录[/]
代表Linux系统根目录
除了cd这个命令外,还有其他的命令
pwd
显示当前目录(加上选项[-P]表示显示连接文件所代表的真实路径mkdir
建立一个新目录rmdir
删除一个目录(加上选项[-p]表示递归的删除改文件之上的空目录
关于mkdir [-mp]
命令
m
表示直接赋予所创建文件的权限例如mkdir -m 744 name
p
表示递归的创建多层目录,例如创建mkdir -p test1/test2/test3
若不加选项p且不存在目录test2则会报错提示test2不存在环境变量
使用echo $PATH
查看当前环境变量
添加环境变量:PATH=”${PATH}:/filename”文件和目录管理
-
复制文件或目录:cp
注意: -a
常用语备份数据,在预设情况下,源数据的权限与目的数据的权限是不同的,目的数据的权限为使用命令者本身。-r
用于复制目录-u
当源文件和目的文件有差异时,才会发生复制操作,故常用于备份-s
为符号链接,可以理解为快捷方式-l
为实体链接-d
预设情况下复制的是源文件,而没有复制源文件的属性,加上-d
即可复制源文件属性删除文件或目录:rm
查看文件
关于文件的时间参数
modification time(mtime):数据内容发生改变时,更新此时间(注意为文件数据内容,而非权限等其他属性
- status time(ctime):当文件状态发生改变时,更新此时间(状态指权限等其他属性
access time(atime):当文件的内容被取用时,更新此时间(被取用指被读取
修改文件时间或新建文件:touch
预设权限与umask
在Linux中文件和目录在创建时的预设权限不同:
文件的创建预设(默认)权限为:-rw-rw-rw-,即默认不可执行
- 目录的创建预设(默认)权限为:-rwxrwxrwx
umask值的是预设权限需要减去的权限,例如若umask为022,则代表应该减去group和other的写权限,如下图!
除了rwx权限还有s,t特殊权限
Set UID
简单来讲就是,该文件在执行时,具有该文件拥有者的权限
例子:存储密码的文件 /etc/shadow
只有root有权限去写,而一般用户可以通过/usr/bin/password
(passwd的权限为-rwsr-xr-x)去修改/etc/shadow
中自己的密码
Set GID
SGID对于文件和目录有不同效果:
- 对于文件和Set UID类似,这里指可以借用群组的权限,简单来讲就是,该文件在执行时,具有该文件群组的权限
- 对于目录,如下图(看不懂。。以后有体会了再看
Sticky Bit
SUID、SGID和SBIT特殊权限的设定
同样还是用chmod命令来设置该特殊权限,例如
- 该文件(或目录)权限为
[-rwsr-xr-x]
则命令为chmod 4755 filename
该文件(或目录)权限为
[-rwxr-xr-t]
则命令为chmod 1755 filename
观察文件类型:file
寻找:
which:
which [-a] commend
,通常根据{PATH}这个环境变量所规范的路径用来寻找可执行指令,参数-a
表示列出所有结果,而非第一个- whereis:
whereis [-bmsu] filenameOrdirname
locate [-ir]
keyword,该命令的查找数据方式是通过一个数据库进行查找(/var/lib/mlocate/),故在查找时有一定的限制:新加入的文件还未来得及去更新数据库(CentOS7.x默认一天更新一次),但是可以手动更新该数据库(命令为updatedb
- find
注意:
- +4代表大于等于五天前的文件
- -4代表四天前到现在的文件
- 4代表4-5那一天的文件
- 此外find还能有很多其他参数
- 此外find还能有很多其他参数