码迷,mamicode.com
首页 > 其他好文 > 详细

寒假-5

时间:2019-03-28 23:15:28      阅读:190      评论:0      收藏:0      [点我收藏+]

标签:领域   顺序   lis   diff   who   通用   指定   二进制文件   递归   

单词
reverse
n. 背面;相反;倒退;失败
adj. 反面的;颠倒的;反身的
vt. 颠倒;倒转

reset
n. 重新设定;重新组合;重排版
vt. 重置;重新设定;重新组合
vi. 重置;清零

tail
n. 尾巴;踪迹;辫子;燕尾服
adj. 从后面而来的;尾部的
vt. 尾随;装上尾巴

retry
n. 重操作
vt. [计] 重试;重审

field
n. 领域

delimiter
n. [计] 定界符

file 查看类型 要求读权限,因为是查看文件头部去判断

cmd1 | cmd2
cmd1 |& cmd2
cmd1 2>&1 | cmd2
文件的权限
read write excute 读写执行
file read=查看读取文件,前提是可读文件例如二进制文件等等
write=修改文件内容
excute=运行程序 文本就没意义了

目录
    read=查看里面文件列表只能简单看到目录列表
    write=能不能删除目录里面的文件
    excute= cd ll 没有的话,不能进去,不能详细属性,不能读取里面文件,即是由read
    目录要么全给rx要么全不给 
    excute基本的权限
    注意:文件能不能删除由目录决定
        .*会连父目录也删掉

chmod change mode
方法1:mode 法
chmod who option permission
who : u g o
option : + - 原来基础上加减 =直接权限
permission : r w x X s
eg: chmod u+x,g-w ,o= file
chmod +x file 统一加上x
注意:普通用户不能改文件的所用着
普通用户想改文件的所属组的条件:是文件的所有者且在所要改的组内
删除文件要查看他的父目录中,他有没有写权限,因为删除等于将目录里面的内容改变inode
对于读写,root不收影响
对于执行,root受影响
读权限对于二进制没有影响,有无都可以
用户去获取文件的权限,前面的权限有意义就不在看后面了,按照所有者,所属组,其他人
匹配不在向后查看

      chmod --reference=file1 file2 file3 模仿file1 权限设置file2 file3
      chmod -R a+x dir1 所有都加x 包括文件
      chmod -R +X dir1 只向目录添加x权限,如果原有执行权限的文件也会加

      注意使用chmod -R 777 dir/*容易写成chmod -R 777 dir /* 恢复不了
      一定要认真的
方法2
    数字法                  file
    rwx rw- r--               6rw  4r 0 1x  
    111 110 100             dir
     7   6   4                7rwx  5r_x  0
     r=4 w=2 x=1;
    chmod 764 file 即可
    加起来为奇数,由执行权限

lsblk 查看块设备
在vfat文件系统不支持权限的更改
rm -rf * 不会删除. ..

chown 设置文件所有者
chown owner file
chown owner:group file
-R递归
chown --reference=file1 file2 file3
chgrp 设置文件的属组信息
chgrp Group file
chgrp --reference=file1 file2 file3
-R

新建文件
umask mask:掩码 功能 = 取消对应的权限
root的umask是022
非特权用户umask是002
umask -p 显示为umask 0022
-S 显示rwx形式
eg:
umask -p >> .bashrc 全局设置 /etc/bashrc 用户设置 ~/.bashrc
[root@CentOS7 ~]#cat .bashrc

.bashrc

User specific aliases and functions

alias rm=‘rm -i‘
alias cp=‘cp -i‘
alias mv=‘mv -i‘

Source global definitions

if [ -f /etc/bashrc ]; then
. /etc/bashrc
fi
umask 0022

对于目录 umask + default = 777
对于文件 default权限: 666-umask 再对结果观察,如果有奇数+1 偶数不变
umask number 设置权限

linux文件系统上的特殊权限
SUID 继承文件所有者的权限
如果原来有x权限 + SUID权限= s 替换所有者的x位 值为4
如果没有x权限+SUID权限=S
SGID 继承文件所属组的权限 适合应有在二进制可执行的程序
作用到文件夹时(目录) 在此文件夹下新建的文件继承目录的所属组
STICKY 作用于目录,此目录的文件只能被所用着删除

t T other de x位

设定文件特定属性
chattr
+i 不能删除,改名,更改 -i
+a 只能追加内容-a
lsattr 显示特定属性

访问控制表
ACL:access contrl list 实现灵活的权限管理
处理文件的所有者所属组和其他人,可以对更多的用户设置
centOS7 默认创建的xfs和ext4文件系统具有ACL
之前版本,默认手工创建的ext4文件系统无ACL,需要手动添加

顺序:所有者-acl用户-acl组-other
存在mask 对除了所有者和other之外的权限限高,需要和用户的权限进行逻辑运算后,才能
变成有效权限Effective permission
如果属于多个组,权限会累加

getfacl  file/dir  查看文件acl表
setfacl -m u:username:per file/dir 加上特定用户权限
setfacl -m g:grpname:per file/dir 
setfacl -M file.acl  file/dir       利用文件添加
setfacl -x u:username  file/dir     删除acl中的特定用户权限
setfacl -X file.acl   file/dir      利用文件删除。用于批操作
setfacl -m d:u:username:per directory 设置文件夹默认acl 市里面的文件新创建自带
setfacl -b file 清除所有ACL权限
setfacl -k dir 删除默认ACL权限

getfacl file1 | setfacl --set-file=- file2 复制file1的acl权限给file2

ACL上的group权限是mask值(自定义用户,组,拥有组的最大权限)
ACL默认目录里的文件不会继承

备份控制列表
cp命令需要加上-p才能连带acl也复制过去 tar不会保留acl
getfacl -R /tmp/dir1 > acl.text
getfacl --restore acl.text

文本处理
文本查看
cat
cat -E 显示结束符
-n 每一行编号显示
-A 显示所有字符
-d 非空行编号
-s 连续空行压缩为一行
tac 倒叙
rev 行直接翻转

文本分页查看
more
-d 显示翻页即退出提示
less
/文本搜索
n/N 跳到下一个或上一个匹配
是man的分页器

显示文本前或后内容
head
-c数字 指定获取前数字字节
-n数字 获取前数字行
-数字 行数
tail
-c数字 指定获取后数字字节
-n数字 获取后数字行
-数字 行数
-f 跟踪显示文件fd新追加的内容,常用日志监控
等价于--follow=descriptor
-F 跟踪文件名,相当于--follow=name --retry

按列抽取文本cut和合并文件paste
cut 过滤 一列为单位
显示文件或stdin数据的指定列
cut -d: -f1 /etc/passwd 4-5
-d“分隔符”
-f数字 列数
cut -c2-5 /etc/passwd
-c字节数

paste 合并两个文件同行号的列到一行
     -d分隔符  默认用TAB
     -s 所有列形成一行显示 =合并旋转90度
     paste f1 f2

文本分析工具
wc word count 经常和管道符使用
计算单词总数 行总数 字节总数和字符总数
可以对文件或STDIN中的数据运行
wc text
4 4 4545
行数 字数 字节数
常用选项
-l 只计算行数 lines
-w 只计算单词总数 word
-c 只计算字节总数
-m 只计算字符总数
-L 显示文件中最长的长度

文本排序sort 将整理过的文本显示在STDOUT 不改变原始文件
sort option file
-r 执行反方向整理
-R 随机排序
-n 执行按数字大小整理
-f 忽略字符串中的字符大小写
-u 删除输出中的重复行

uniq 从输入中删除前后相接的重复的行
    -c 显示每行重复出现的次数
    -d 仅显示重复过的行
    -u 仅显示不曾重复的行
    连续且完全相同方为重复
    常和sort命令一起配合使用  sort file1 | uniq -c 

cat /var/log/httpd/access_log | cut -d" " -f1 | sort|uniq -c|sort -nr|head -n2

比较文件
diff f1 f2 比较两个文件之间的区别
5c5
< fjiej
注明第五行有区别

复制对文件区别 patch
diff命令输出被保存在一种叫做“补丁”的文件中
使用-u选项来输出统一的unified diff格式问价,最适用于补丁文件
patch 复制在其他文件中进行的改变(谨慎使用)
适用 -b 选项来自动备份改变了的文件
diff -u f1 f2 >f.p
删除f1后,利用f.p+f2找回f1 并覆盖到f2中
patch -b f2 f.p

文本处理

ifconfig ens33 | head -n2 |tail -1 | tr -st ‘ ‘ ‘:‘ | cut -d: -f3

getfacl
setfacl
chmod
chown
chgrp
umask
reset 复位,终端初始化

=

寒假-5

标签:领域   顺序   lis   diff   who   通用   指定   二进制文件   递归   

原文地址:https://blog.51cto.com/14240011/2370919

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!