chmod :change the permissions mode of a file
更改文件的权限模式
chmod [ugoa +-= rwx] [文件名]
- 权限数字 一般都用数字
-rwxrw-r--
_7 _6 _4- 改变目录权限,子目录权限不会改变,需要递归修改 (recursive)
mkdir -p /tmp/a/b
chmod 777 /tmp/a
发现子目录权限并没有改变
chmod -R 777 /tmp/a
递归处理,所有文件及子目录一并处理
文件权限和目录权限对比
- 文件
read |
读文件(cat less head tail more ) |
---|---|
write |
写入文件 |
execute |
执行文件 |
- 目录
read |
查看目录 | 列出目录内容 |
---|---|---|
write |
修改目录 | 在目录中创建、删除文件 |
execute |
执行目录 | 进入目录 |
-
删除文件的前提是目录有
write
的权限才行 (类比房间和桌椅) -
chown (change file ownship)
改变文件拥有权
1.
chown xxx /tmp/Japan
chgrp (change file group ownship)
改变文件的所属组
chgrp xxx /tmp/Japan
- 文件创建的所属组是缺省组
umask
:the user file-creation mask
用户文件创建掩码
- 功能:显示、设置文件的缺省权限
- 缺省创建的文件不能有可执行权限,所以文件默认少了
x
umask -S
字符显示掩码umask
8进制掩码- 默认掩码是
0022
,默认权限755
=777
(最高权限) - 掩码022
umask abc
,所以默认权限是755
文件搜索
find path -option [ -print ] [ -exec -ok command ] {} \;
find /etc -name init -exec ls -l {} \;
find [搜索范围] [匹配条件]
find / -name
根目录下搜索,类似win全盘搜索
find /etc -name init
find /etc -name *init*
正则表达式内容,所有包含init的文件find /etc -name *init(init*)
前/后 包含find /etc -name init???
后面三个字符内容不知道
find /etc -size +204800
(100mb
)查找大于100mb的文件
linux
1个数据块大小是0.5kb
,+
代表大于,-
代表小于
find /home -user root
根据所属组的查找find /etc -*min +time
根据时间查找
find /etc -amin +10
access
10分钟前被访问过的文件find /etc -cmin +10
change
10分钟前属性被修改过的文件find /etc -mmin -10
modify
10分钟内 内容被修改过的文件
find /etc -size +2048 -a -size -204800
-a
:and
并且 注意到还是要加上-size
find /etc -size +2048 -o -size -1024
-o
:or
或者
-type
文件的类型
f
:file
文件
d
:directory
目录
l
:link
软链接
find /etc -name init* -a -type f
文件名以init开头且类型是文件
find /etc -name init* -o -type d
文件名以init开头且类型是目录
find /tmp -inum 30000
根据文件inode
查找
其他搜索
locate xxx
在文件资料库查找文件,找不到可能不在收录范围之中
(速度快)which ls
查找命令目录及别名信息whereis ls
查找命令目录及帮助文档- 在文件中找字符串
grep :(global regular experssion print:全局正则表达式打印)
grep multiuser /etc/inittab
grep -i multiuser /etc/inittab
(-i
一般是不区分大小写ignore
)
新
- 链接命令
-a
-o