通配符(Globbing)
通配符与元字符类似,通配符主要用于文件名的匹配,而元字符则主要用在字符串的匹配上;
下面介绍几种常用的通配符:* 表示匹配任意位数的任意字符
? 表示匹配一位任意字符
^ 表示取反,不包含的意思
[] 表示此区间内的任意一个字符
{} 表示一种集合
\ 转义字符,使具有特殊意义的字符失去原有意义
| 表示‘或,匹配一组可选的字符元字符
元字符是用来描述字符的特殊字符。
常用的元字符及意义如下:除了以上的常用的元字符,还有一些特殊的元字符:
grep
cut
sort
uniq
练习
1、列出当前系统上所有已经登录的用户的用户名,同一用户登录多次,只显示一次即可
who |cut -d -f 1|uniq
2、取出最后登录到当前系统的用户的相关信息
cat /etc/passwd|grep “^`last -1|cut -d -f1|head -1`”
3、去除当前系统上被用户当作其默认的shell的最多的那个shell
cat /etc/passwd|cut -d: -f7|sort -u|sort -rn|head -1
4、将/etc/passwd中的第三个字段的数值最大的后10个用户的信息全部改为大写后保存至/tmp/maxusers.txt中
cat /etc/passwd|sort -t: -k3 -n|tail|tr [a-z] [A-Z] 2&>1 /tmp/maxusers.txt
5、取出当前主机的IP地址,
ifconfig eno16777736| grep “\<inet\>”|cut -d -f 10
6、列出/etc/下所有以.conf结尾的文件的文件名,并将其名字转换成大写后保存至/tmp/etc.conf文件中
ls /etc|grep -o “.*\.conf$”|tr [a-z] [A-Z] >> /tmp/etc.conf
7、显示/var目录下一级子目录或者文件的总个数
linux里没有直接的命令来展示一个目录下的文件个数,可以通过管道将两个命令组合
查看目录下所有文件个数命令如下:
ls |wc -l
1、ls 是查看文件夹内所有文件的命令
2、wc -l 是统计文件行数的命令
3、以上两个命令叠加,相当于统计文件夹下文件总数8、取出/etc/group文件中的第三个字段数值最小的10个组的名字
cat /etc/group|sort -t: -k 3 -n|head |cut -d: -f1
9、将/etc/fstab和/etc/issue文件的内容合并为同一个内容后保存至/tmp/etc.test
cat /etc/fstab /etc/issue >>/tmp/etc.test
Linux基础知识—用户、组管理
Linux为了提高其安全性,通过创建用户及用户组并赋相应的权限来限制各用户访问不同的文件。下面我们来学习下用户及用户组的相关管理命令先来看看几个文件:
/etc/passwd
其文件内容格式是由‘:分隔开的字符串,其内容包括如下: USERNAME:X:UID:GID:DESCRIPTION:HOME:SHELL
/etc/shadow
其内容格式类似于/etc/passwd格式,只是内容不同:
这个简单的解释下:
UID
人与计算机交互,人可识别字符和数字等,但是计算机只能识别0、1这样的二进制代码,所以,UID就是分配给USERNAME相对应的计算机可识别的ID号码;UID可分为以下几类:
GID
在程序设计过程中,我们会将一部分用户之间的资料共享,而不愿让资料为外人看到,所以就有了用户组的概念,用户之间通过GID来确定用户组的范围
下面我们来介绍下设置以上及相关信息的命令:
useradd
passwd
groupadd
newgrp
总结描述用户和组管理类命令的使用方法并完成练习
以上就是Linux基础之正则表达式,用户、组管理命令介绍,如果您有什么建议可以留言