Linux I/O重定向、管道、用户与组管理、文件权限管理与文本文本处理工具、grep命令、正则表达式、vim编辑器练习

一、将当前系统登录用户的信息转换为大写后保存至/tmp/who.out文件中。

who | tr -s [:lower:] [:upper:] > /tmp/who.out

[root@centos7 ~]#who | tr -s [:lower:] [:upper:] > /tmp/who.out
[root@centos7 ~]#cat /tmp/who.out
ROT     :0           2019-11-02 01:54 (:0)
ROT     PTS/0        2019-11-03 15:10 (192.168.30.133)
ROT     PTS/1        2019-11-02 15:27 (192.168.30.1)
ROT     PTS/2        2019-11-03 15:11 (192.168.1.102)

 

 

二、计算1+2+3+……+99+100的总和。

方法一:

echo {1..100} | tr -s ' ' + | bc

[root@centos7 ~]#echo {1..100} | tr -s ' ' + | bc
5050

 

方法二:

seq -s + 100 | bc

[root@centos7 ~]#seq -s + 100 | bc
5050

 

 

三、常用的用户以及文件管理命令有哪些,并演示命令以及用法。

1. 用户管理

adduser
创建用户

authconfig --passalgo= --update
修改用户密码的加密算法

--passalgo=md5
--passalgo=sha1
--passalgo=sha224
--passalgo=sha256
--passalgo=sha384
--passalgo=sha512

chage
交互式修改指定用户的密码的设置

chage -d 0
指定用户密码立即过期

chage -l
查看指定用户的密码策略

chage -E
设置用户密码过期时间

chage -I
设置用户密码宽限期

chage -m
设置用户密码最短有效期

chage -M
设置用户密码最长有效期

chage -W
提前多少天告警

chpasswd
批量修改用户密码

echo PASSWORD.TXT | chpasswd
根据用户密码列表文件批量修改用户密码

chsh -s SHELL USERNAME
修改指定用户的shell类型

chvt [1~6]
切换虚拟终端界面

echo $USER
查看用户名

echo PASSWORD | passwd --stdin USERNAME
通过标准输出接受用户密码

groupadd
创建用户组

groupadd
创建用户组

groupadd -g
指定GID

groupadd -r
创建系统组

groupdel
删除组

groupmems
更改、查看组成员

groupmems -g
指定组

groupmems -a
指定用户加入组

groupmems -d
从组中删除用户

groupmems -p
从组中清楚所有成员

groupmems -l
显示组成员列表

groupmod
修改组属性

groupmod -n
修改组名

groupmod -g
修改组id

groups
查看用户所属组列表

gpasswd
修改、增加用户组口令

gpasswd -a USERNAME
将指定用户添加到指定组中

gpasswd -d USERNAME
从指定组中移除指定用户

gpasswd -A USERNAME1,USERNAME2,……
设置有管理权限的用户列表

id
判断用户是否存在,查看用户id、组id、组列表、安全上下文

id -u
只显示用户id

id -g
只显示用户主组id

id -G
只显示用户附加组id

id -n
需要配合-u(只显示用户名)、-g(只显示用户主组名)、-G(只显示用户附加组名)使用

last

显示用户最近登录信息

newgrp
临时切换用户主组

newusers FILE
根据用户列表文件批量创建用户

passwd
修改用户密码

passwd -e
强制用户下次登录修改密码

passwd -l
锁定指定用户

passwd -d
删除指定用户密码

passwd -u
解锁指定用户

passwd -f
强制操作

passwd -n
指定最短使用期限

passwd -x
指定最大使用期限

passwd -i
设置用户宽限期

passwd -w
提前多少天开始告警

passwd --stdin
通过标准输出接受用户密码

tty
查看当前所在虚拟终端

useradd
创建用户

useradd -N
创建用户时不创建同名主组,该用户默认加入组ID为100(/etc/default/useradd所指定)的users组

useradd -u
创建用户并手工指定用户UID时不检查UID的唯一性

useradd -uo
创建用户时手工指定UID

useradd -g
创建用户时手工指定用户主组(组名、GID)

useradd -c
创建用户时手工指定用户的注释信息

useradd -d
创建用户时手工指定用户家目录路径(必须不存在)

useradd -s
创建用户时手工指定用户的shell类型

useradd -r
创建系统用户(不创建家目录和邮箱)

useradd -m
创建系统用户时创建家目录

useradd -M
创建普通用户时不创建家目录

useradd -G
创建用户时指定附加组(必须存在)

useradd -D
显示/etc/default/useradd内容( 新用户默认设置)

useradd -D -b
修改/etc/default/useradd中所设置的默认shell类型

useradd -D -s
修改/etc/default/useradd中所设置的默认家目录

useradd -D -g
修改/etc/default/useradd中所设置的默认主组

userdel
删除用户

userdel -r
删除用户并删除其家目录及邮箱目录

userdel -f
强制删除

usermod
用户属性修改

usermod -L
用户加锁,/etc/shadow密码栏增加!,无法登录系统,但可以通过进行用户切换

usermod -U
CentOS5用户解锁,/etc/shadow密码栏删除!,需要输入两次才能真正解锁,CentOS6和CentOS7无法解锁

usermod -u
修改用户UID

usermod -g
修改用户主组

usermod -G
修改用户附加组

usermod -aG
追加用户附加组

usermod -G ""
引号内为空,取消用户所有附加组

usermod -s
修改用户shell类型

usermod -s
修改用户描述信息

usermod -s
修改用户shell类型

usermod -dm
自动创建用户新家目录并移动原家目录数据

usermod -l NEWNAME OLDNAME
修改用户名

usermod -e YYYY-mm-dd
指定用户账号过期时间

usermod -f
指定用户账号宽限期,/etc/shadow倒数第三栏

w
显示当前所以的登录会话及所做的操作

who
查看当前所有的登录会话信息

whoami
显示当前用户名

who am i
显示当前用户的登录会话信息

su
切换用户,不完全切换,也称非登录式切换,即不会读取目标用户的配置文件,不改变当前工作目录

su -
登录式切换,完全切换,会读取目标用户的配置文件,切换至家目录,默认切换为root管理员

su - root -c 'CMD'
使用root管理员身份执行指定命令(用单引号括起来)

 

2. 文件管理

>
创建空文件、覆盖文件内容、标准输出重定向

>>
创建空文件(更为安全的做法)、标准输出追加重定向

basename
去掉路径,只取文件名

cd
默认切换到用户家目录

cd /
切换到根目录

cd ~
切换到家目录,也可以指定其他用户家目录

cd .
切换到当前目录

cd ..
切换到父目录

cd -
切换到系统所记录上次所在的目录

chattr
设定文件特定属性

chattr +/-i
不能删除、改名、更改(包括管理员)

chattr +/-a
只能追加内容(包括管理员)

chattr +/-A
不修改读时间<

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值