修改文件/目录权限
chmod [who] [+ | - | =] [mode] 文件名¼
1)ls -l
:查看所在目录所有文件的权限
2)chmod u=r file
:把file文件的当前(用户user)的权限赋值为可写模式
3)chmod g=wrx file
:把file文件的当前(组gruop)的权限赋值为可写,可读,可执行模式
4)chmod g-x file
:把file文件的当前(组group)的权限减去可执行模式
5)chmod o+w file
:把file文件的当前(所有人other)的权限加上可写模式
6)chmod a-x file
:把file文件的当前(用户user),(组group),(所有人other)的权限减去写入模式
7)chmod 777 file
:把file文件的当前(用户user),(组group),(所有人other)的权限设为可读可写可执行模式
8)chmod -R 777 file
:把file目录下所有的文件以及文件夹通过递归方式对的当前(用户user),(组group),(所有人other)的权限设为可读可写可执行模式
注:如果执行修改权限出现 Operation not permitted
请在命令前面加sudo chmod -R 777 file
查询字符串并输出到文件中
grep '602110' jvm-app-web.log | tee -a 602110.log
查找目录下的所有文件中是否含有某个字符串
find .|xargs grep -ri "IBM"
查找目录下的所有文件中是否含有某个字符串,并且只打印出文件名
find .|xargs grep -ri "IBM" -l
查找字符串并输出到文件中
find -name xxx.log|xargs grep "abd">aa.txt
语法:find pathname -options [-print -exec -ok]
options有如下几种:
- name :按照文件名查找文件
- perm :按照文件权限来查找文件
- user :按照文件属主来查找文件
- group :按照文件所属的组来查找文件
- mtime -n +n 按照文件的更改时间来查找文件,-n表示文件更改时间距现在n天以内,+n表示文件更改时间距现在n天以前。find命令还有-atime 和-ctime选项,但它们都和-mtime选项相似。
- size n[c]查找文件长度为n块的文件,带有c时表示文件长度以字节计。
- nogroup 查找无有效所属组的文件,即该文件所属的组在/etc/groups中不存在
- newer file1 !file2查找更改时间比文件file1新但比文件file2旧的文件
- depth 先查找指定目录有无匹配文件,若无则再在子目录中查找
- type 查找某一类型的文件,如
- b :块设备文件
- d:目录
- e:字符设备文件
- p;管道文件
- l:符号链接文件
- f:普通文件
linux下创建文件与目录时默认被赋予了什么样的权限?
umask–指定当前使用者在创建文件或目录的时候默认的权限值
1 [root@iZ288fgkcpkZ default]# umask
2 0022
3 [root@iZ288fgkcpkZ default]# umask -S
4 u=rwx,g=rx,o=rx
r为4,w为2,x为1
以上为查看默认权限的两种方式,
第一种方式中的后三位是关于权限的,他的意思是:
当创建文件或目录的时候要拿掉的权限,022表示user,没有拿掉任何权限,group拿掉了写(2)权限,other则是拿掉了写(2)权限
第二种方式则更容易读懂,他的意思其实就是:
当创建文件或目录的时候,会被赋予的权限
值得注意的是,虽然 umask 显示说明是有执行权限的,那只是在创建文件夹的时候,当我们创建文件的时候是不会赋予执行权限的
如何修改默认权限?
1 [root@iZ288fgkcpkZ hello]# umask
2 0022
3 [root@iZ288fgkcpkZ hello]# umask -S
4 u=rwx,g=rx,o=rx
5 [root@iZ288fgkcpkZ hello]# umask 003
6 [root@iZ288fgkcpkZ hello]# umask
7 0003
8 [root@iZ288fgkcpkZ hello]# umask -S
9 u=rwx,g=rwx,o=r
10 [root@iZ288fgkcpkZ hello]# touch 2.txt
11 [root@iZ288fgkcpkZ hello]# ls -Al
12 总用量 0
13 -rw-r--r-- 1 root root 0 7月 29 17:49 1.txt
14 -rw-rw-r-- 1 root root 0 7月 29 18:39 2.txt
15 [root@iZ288fgkcpkZ hello]#
umask 003
意思
是拿掉 other 的写(2)和执行(1)权限(当然是只保留了读权限), user 和 group 不拿掉任何权限
root 的 umask 会拿掉比较多的属性,root 的 umask 默认是 022
普通用户的 umask 为 002