本次更新了文本处理,用户管理,网络配置的命令详解,知识导图如下
一:用户管理
用户与用户组的关系如下:
A 一个用户可以属于一个用户组
B 一个用户可以属于多个用户组
C 多个用户可以属于一个用户组,多个用户都具有此用户组的权限。
注意三个文件:
☆ /etc/passwd 用户配置文件,存储用户的基本信息
☆ /etc/group 存储用户组的信息
☆ /etc/shadow 存储用户的密码信息
1:用户组
1)用户组的添加
语法:# groupadd [参数选项 选项值] 用户组名
选项:-g:设置用户组ID 数字,如果不指定,则默认从1000 之后递增
/etc/group文件结构
wheel : x : 10 : itheima
用户组名 : 密码(占位符) : 用户组ID : 这个组包含的用户(附属组)**
2)用户组的删除
命令:groupdel
语法:# groupdel 用户组名
案例:删除hr组
groupdel hr
含义:将hr组删除
3)用户组的修改
命令:groupmod
语法:# groupmod [选项 选项值] 用户组名
选项:
-g :gid缩写,设置一个自定义的用户组ID 数字
-n :name缩写,设置新的用户组的名称
示例代码:修改hr用户组,将组ID改成1100,将名称改为bjhr
groupmod -g 1100 -n bjhr hr
含义:将hr组的组ID改成1100,组名改成bjhr
2:用户
1)用户的添加
uuseradd [选项 选项的值] … 用户名
用法一:useradd 用户名
示例代码:
#useradd zhangsan
含义:创建用户zhangsan,不带任何选项。
注意:不用任何参数,创建用户,系统会默认执行以下操作:
a)在 /etc/passwd 文件中创建一行关于zhangsan用户的数据
b)在 /etc/shadow 文件中新增了一行关于zhangsan 密码的数据
c)在 /etc/group 文件中创建一行与用户名相同的组,例如zhangsan
d)在 /etc/gshadow 文件中新增一行与新增群组相关的密码信息,例如
zhangsan
e)自动创建用户的家目录,默认在/home下,与用户名同名
etc/passwd存储用户信息的文件
etc/passwd存储用户信息的文件
2)用户的删除
命令:userdel
语法:# userdel 选项用户名
作用:删除账户及其对应家目录
选项:-r:表示删除用户的同时,删除其家目录/home下的对应文件夹
3)用户的查看
命令:id
作用:查看一个用户的一些基本信息(包含用户id,用户组id,附加组id…),该指令如果不指定用户则默认当前用户。
4)用户的修改
命令:usermod(user modify)
语法: usermod [选项选项的值] … 用户名
作用:修改用户的各种属性
常用参数:
-g:表示指定用户的用户主组,选项的值可以是用户组的ID,也可以是组名
-G:表示指定用户的用户附加组,选项的值可以是用户组的ID,也可以是组名
-u:uid,用户的id(用户的标识符),系统默认会从500 之后按顺序分配uid,如果不想使用系统分配的,可以通过该选项自定义
-L:锁定用户,锁定后用户无法登陆系统lock
-U:解锁用户unlock
5)修改密码
Linux 不允许没有密码的用户登录到系统,因此前面创建的用户目前都处于锁定状态,需要设置密码之后才能登录计算机。
命令:passwd
语法:# passwd 用户名【如果不指定用户名则修改当前用户的密码】
6)切换用户
命令:su
语法:su
命令:sudo su
语法:# sudo su
su 要输入的password,而sudo su 要输入root的password,但二者都将用户身份改变成定义的用户。
二:文本处理
1:文本处理命令
cat:正序查看文件内容
tac:倒叙查看文件内容
more:分屏查看文件,已全部预加载
less:分屏查看文件,部分加载文件,读取大文件效率高
head:查看一个文件的前n 行,如果不指定n,则默认显示前10 行。
tail:查看一个文件的最后n 行,如果n 不指定默认显示最后10 行。-f代表输出变化后新增加的数据
2:统计文本信息
wc:wc统计文件内容数量
-l:表示lines,行数(以回车/换行符为标准)
-w:表示words,单词数 依照空格来判断单词数量
-c:表示bytes, 字节数(空格,回车,换行)
wc -lwc 文件名
du:du查看文件或目录(递归显示子目录)占用磁盘空间的大小
常见参数:
-s :summaries,只显示汇总的大小,统计文件夹的大小
-h:表示以高可读性的形式进行显示,如果不写-h,默认以KB的形式显示文件大小
du -h 文件名
3:文本处理
find:文件或者文件夹查找
常用参数:
-name:按照文档名称进行搜索(支持模糊搜索)
* : 通配符,匹配任意个任意字符
-type:按照文档的类型进行搜索
文档类型的值: "-" 表示文件(在使用find 的时候需要用f 来替换), "d" 表示文件夹
grep:搜索文件内容
在文件中直接找到包含指定信息的那些行,并把这些信息显示出来
用法一:grep 查找的内容 文件名
示例代码: #grep network boot.log 含义:在boot.log文件中,查找包含network的行
用法二:grep 查找的内容 多个文件
示例代码: #grep network /var/log/* 含义:在/var/log目录下的所有文件中,查找包含network的行
输出重定向
>:标准输出重定向 :覆盖输出,会覆盖掉原先的文件内容
>>:追加重定向 :追加输出,不会覆盖原始文件内容,会在原始内容末尾继续添加
用法一:使用 > 进行覆盖输出
示例代码: ll > llroot.txt
含义:将ll命令输出的内容,写入到llroot.txt文件中,如果llroot.txt文件中有其他内容,则先清空,在写入
注意:文件路径中的文件可以是不存在的文件,例如llroot.txt可以不存在,执行命令时会自动创建这个文件
用法二:使用 >> 进行追加输出
示例代码: ll >> llroot.txt
含义:将ll命令输出的内容,追加写入到llroot.txt文件中
注意:文件路径中的文件可以是不存在的文件,例如llroot.txt可以不存在,执行命令时会自动创建这个文件
三:管道
1:管道符
管道符:|
作用:管道是一种通信机制,通常用于进程间的通信。它表现出来的形式将前面每一个进程的输出(stdout)直接作为下一个进程的输入(stdin)。
2:过滤功能
ls / | grep “y”
grep 指令用于“过滤”
为了便于理解,上述的指令变相实现可以如下:
ls / > xxx.txt 将ls /的结果保存到xxx.txt文件中
grep “y” xxx.txt 使用grep指令搜索xxx.txt中的包含y的行
3:特殊功能
通过管道的操作方法来实现less 的等价效果
cat a.txt | less 等价于 less a.txt
4:扩展处理
使用Linux命令统计“/”下的文档的个数?
ls / |wc -l
5:xargs命令扩展
由于很多命令不支持|管道来传递参 数,而日常工作中有有这个必要,所以就有了 xargs 命令。
find /etc -name “.conf" | ls -l (错误)
find /etc -name ".conf” | xargs ls -l (正确)
xargs特别说明:
xargs 可以将管道或标准输入(stdin)数据转换成命令行参数,也能够从文件的输出中读取数据。
xargs 也可以将单行或多行文本输入转换为其他格式,例如多行变单行,单行变多行。
xargs 默认的命令是 echo,这意味着通过管道传递给 xargs 的输入将会包含换行和空白,不过通过 xargs 的处理,换行和空白将被空格取代。
xargs 是一个强有力的命令,它能够捕获一个命令的输出,然后传递给另外一个命令
四:网络配置
ifconfig查看网络信息
命令:ifconfig
作用:获取网卡的相关信息语法:
网卡配置文件位置:
存放在/etc/sysconfig/network-scripts目录下,文件名格式为ifcfg-网卡名称
配置文件详解: