用户权限及正则表达式

ln –s软连接原文件可以写绝对路径或相对于软连接文件的相对路径

ln 硬链接的原文件可以写绝对路径,相对于硬链接文件的相对路径或相对于当前路径的路径(因为硬链接主要是看节点号)

etc/passwd格式:

username:x:uid:gid:home:shell

etc/shadow格式

username:password:password age:min:max:warn:inactive:userage:

etc/group格式

groupname:x:gid:groupmember

etc/gshadow格式

groupname:password:groupadmin:groupmember

useradd –D查看用户默认属性(实际上就是etc/default/useradd中的内容)

/etc/skel存放着新增加用户的家目录模板,家目录被删除可以从/etc/skel复制一份

userdel –r 在删除用户时同时删除家目录,若其所属组为私有组则将组也删除,同时删除mail

批量创建用户使用newusers命令,将用户信息写成passwd文件的格式

newusers 文件名

设置口令使用passwd命令,echo 口令|passwd –stdin 用户名

批量设置口令,创建一个文件,写成  用户名:口令 格式

cat 文件名 | chpasswd

复制目录中除.和..之外所有文件:cp  /#/.   #

                                                 cp/#/.[^.]

 etc/login.gefs 和etc/default/useradd保存了用户创建时的默认属性

authconfig—passalgo= #  –update 更改加密方式

usermod:-u:更改uid     -g:更改gid   -G:更改附加组(不加a则覆盖现有组,加a会保留现有组进行累加)  -l:更改用户名    -L:锁定  -U:解锁    -e: 账户过期日期 uu-mm-dd  -f:非活动期限

usermod –d 给用户指定一个新的家目录(通常配合m使用,不然新家目录不会自动创建,原家目录文件也不会自动移动到新的家目录)

groups  用户名: 查看用户的组

 id 用户名  :查看uid,gid,组信息等  -u:uid  -g:gid  -G:groups   (选项后面加n会显示名称,-un,-gn,-Gn)

要清除所有附加组:usermod  –G ‘’用户名

                              usermod –G ‘主组名’用户名

su:切换用户  su- 是完全切换  非完全切换当前目录不变,PATH不变

su –c # 以root身份执行命令

直接执行passwd可以修改密码

chfn修改注释信息

 

chsh修改shell类型

可以使用gpasswd命令修改组密码

newgrp可以临时切换基本组

文件及目录具有r:读  w:写  x:修改三种权限,权限分为u:属主,g:属组,o:其他

当目录只具有读权限时,只能够读取文件名,不能够进行其他任何操作

当目录只具有执行权限时,不能读取文件名,但是在事先知道文件名的情况下可以进行对文件所具有权限的操作,但不能做改名,删除等影响目录内容的操作

当目录只具有写权限时,不能进行任何操作

Chmod格式为 chmod who opt permission file

Who=u,g,o,a       opt=+,-,=       per= r,w,x

X权限若加载目录上则表示给目录和本身有一个x权限的文件加上执行权限,而对于原本不具有x权限的则不加

使用数字赋予权限时r=4,w=2,x=1,目录最大权限为777,文件为666

umask决定目录默认权限,原理为从最大默认权限屏蔽掉相应权限位即将最大权限和umask转化为二进制形式并一一对应,将umask为1的位置将相应最大权限转化为0,

umask为0的位置对应的最大权限不变,再将得出的二进制数字转化为八进制就是目录或文件的权限。

权限简便算法:对目录用777-umask

                       对文件用666-umask(若减出的数为奇数则加1,偶数则不变)

三种特殊权限:suid,sgid,sticky

suid:运行某二进制程序时,自动继承改程序属主的权限

sgid:作用在二进制程序上时,用户运行该程序时自动继承该程序所属组的权限

         作用在目录上时,在该目录内新建的文件或目录自动继承该目录的所属组

Sticky:设置在文件上无意义,设置在目录上只有文件所有者或管理员可以删除

Acl实现灵活的权限管理(自己后加的分区有可能默认不支持acl)

Setfacl 设置acl权限

Getfacl查询acl权限

Acl影响除文件所有者和其他人的所有人

Acl的mask值影响最大权限

文件访问权限顺序:owner-facl user-group-facl group –other

Last显示用户登陆及重启历史

Lastb显示用户错误登录尝试

Lastlog:每一个用户最近一次登录信息

随机数生成器: /dev/random       /dev/urandom

Cat    -A:显示所有特殊字符  -n:显示行号   -s压缩多个空行成一行

         -b:非空行编号

Tac:倒置文本(行倒置)     rev:列倒置

Tail –f –no  & # 将新增加内容显示出来

Cut –d分隔符 –f以分隔符分开列数

–output-delimiter=自定义分隔符

Paste 文本1  文本2    -d:分隔符     -s:所有行合成一行

Wc:统计工具  -l:行数   -w:单词数  -m:字符数  -c:字节数

Sort排序工具    -r:反向排序   -n:按数字排序  -f:忽略大小写   -u:删除重复行

 -t 界定符  -k按界定符分第几列

Uniq:删除连续重复的行  -c:每行重复的次数  -d:显示重复的行  –u:显示不重复的行

Diff可以比较两个文件的不同  –u按标准格式输出不同

Patch  文件   diff文件 可以进行恢复( patch –b可以先将文件进行备份,patch命令恢复原文件时会覆盖现文件)

Grep:文本过滤工具

Grep分为grep  egrep  fgrep

Regexp:由一类特殊字符及文本字符所编写的模式,其中有  些字符(元字符)不表示字符字面意义,而表示控制或通配  的功能

正则表达式分为基本正则表达式和扩展正则表达式

元字符分类:字符匹配、匹配次数、位置锚定、分组

字符匹配: 

. : 匹配任意单个字符

[] : 匹配指定范围内的任意单个字符 

[^] :匹配指定范围外的任意单个字符

匹配次数:用在要指定次数的字符后面,用于指定前面的字  符要出现的次数(贪婪模式:尽可能长的匹配)

  *:匹配前面的字符任意次,包括0次  

 .*:任意长度的任意字符 

\?:匹配其前面的字符0或1次

 \+:匹配其前面的字符至少1次 

\{m\}:匹配前面的字符m次 

\{m,n\}:匹配前面的字符至少m次,至多n次

 \{,n\}:匹配前面的字符至多n次

 \{m,\}:匹配前面的字符至少m次

位置锚定:定位出现的位置 

^:行首锚定,用于模式的最左侧 

$:行尾锚定,用于模式的最右侧 

^#####$: 用于模式匹配整行 

^$: 空行 

^[[:space:]]*$ :空白行 

\< 或 \b:词首锚定,用于单词模式的左侧 

\> 或 \b:词尾锚定;用于单词模式的右侧 

\<####\>:匹配整个单词

分组:\(\):将一个或多个字符捆绑在一起,当作一个整体进 行处理

 

 

 

 

 

 

 

 

                             

                             

原创文章,作者:zzzzz1357x1,如若转载,请注明出处:http://www.178linux.com/30340

(0)
上一篇 2016-08-08 16:15
下一篇 2016-08-08 16:15

相关推荐

  • 文件的查找作业

    1、查找/var目录下属主为root,且属组为mail的所有文件 2、查找/var目录下不属于root、lp、gdm的、所有文件 3、查找/var目录下最近一周内其内容修改过,同时属主不为root,也不是postfix的文件 4、查找当前系统上没有属主或属组,且最近一个周内曾被访问过的文件 5、查找/etc目录下大于1M且类型为普通文件的所有文件 6、查找/…

    Linux干货 2016-08-15
  • 马哥教育网络班21期+第6周课程练习

    请详细总结vim编辑器的使用并完成以下练习题 1、复制/etc/rc.d/rc.sysinit文件至/tmp目录,将/tmp/rc.sysinit文件中的以至少一个空白字符开头的行的行首加#; [root@centos ~]# cp /etc/rc.d/rc.sysinit /tmp/ [root@centos&nbs…

    Linux干货 2016-07-27
  • PHP通过Thrift操作Hbase

    HBase是一个开源的NoSQL产品,它是实现了Google BigTable论文的一个开源产品,和Hadoop和HDFS一起,可用来存储和处理海量column family的数据。官方网址是:http://hbase.apache.org 一 、HBase访问接口 1.  Native Java API,最常规和高效的访问方式,适合Hadoop …

    Linux干货 2015-05-18
  • 学习shell scripts

    1. 为什么要学习shell编程?          许多人会问,为什么要学习shell脚本编程?我学的是linux,又不是编程,其实对于个人用户可能用处不是很大,但是当你在为公司的成千上完的服务器做维护时,可能没有shell编程的话可能把人累死也无法完成任务,一千台服务器要做相…

    Linux干货 2016-08-18
  • 网络管理

    网络管理 本章内容 网络概念 OSI模型 网络设备 TCP/IP IP地址 配置网络 实现网络组 测试网络 网络工具 为linux网卡配置ip地址,不是给网卡配置地址,是给内核的网络功能配置,地址是属于内核。为内核配置即时生效,修改配置文件,是永久生效。ifconfig 配置信息,会立即生效,但是重启网络服务或主机,都失效。网络服务/etc/init.d/n…

    Linux干货 2016-09-05

评论列表(1条)

  • 马哥教育
    马哥教育 2016-08-10 10:32

    博客写的太少了,希望能把grep常见用法及正则表达式能完整的表达出来,这是需要有待提高的地方