第三周作业

一、显示/etc目录下,以非字母开头,后面跟了一个字母以及其它任意长度任意字符的文件或目录

[root@centos7 ~]# ls -d /etc/[^[:alpha:]][[:alpha:]]*

/etc/1dafksdfks.txt  /etc/1z34aa  /etc/1z43e  /etc/2z34aa  /etc/3h4n6n

[root@centos7 ~]#

二、复制/etc目录下所有以p开头,以非数字结尾的文件或目录到/tmp/mytest1目录中。

首先在/tmp目录下创建mytest1目录,

非数字结尾的表示方法为([^[:digit:]]或^[0-9]),

cp -R 表示递归复制目录。

[root@centos7 ~]# mkdir /tmp/mytest1/

[root@centos7 ~]# cp -R /etc/p*[^[:digit:]] /tmp/mytest1/

[root@centos7 ~]# ll /tmp/mytest1/

total 68

drwxr-xr-x.  2 root root 4096 Dec 12 22:05 pam.d

-rw-r--r--.  1 root root  68 Dec 12 22:05 papersize

-rw-r--r--.  1 root root 2411 Dec 12 22:05 passwd

-rw-r--r--.  1 root root 2411 Dec 12 22:05 passwd-

-rw-r--r--.  1 root root 1362 Dec 12 22:05 pbm2ppa.conf

drwxr-xr-x.  9 root root  104 Dec 12 22:05 pcp

-rw-r--r--.  1 root root 6460 Dec 12 22:05 pcp.conf

-rw-r--r--.  1 root root 6662 Dec 12 22:05 pcp.env

-rw-r--r--.  1 root root 2872 Dec 12 22:05 pinforc

drwxr-xr-x. 12 root root  151 Dec 12 22:05 pki

drwxr-xr-x.  2 root root  28 Dec 12 22:05 plymouth

drwxr-xr-x.  5 root root  52 Dec 12 22:05 pm

-rw-r--r--.  1 root root 6300 Dec 12 22:05 pnm2ppa.conf

drwxr-xr-x.  2 root root    6 Dec 12 22:05 popt.d

drwxr-xr-x.  2 root root  154 Dec 12 22:05 postfix

drwxr-xr-x.  3 root root  219 Dec 12 22:05 ppp

drwxr-xr-x.  2 root root  105 Dec 12 22:05 prelink.conf.d

-rw-r--r--.  1 root root  233 Dec 12 22:05 printcap

-rw-r--r--.  1 root root 1819 Dec 12 22:05 profile

drwxr-xr-x.  2 root root 4096 Dec 12 22:05 profile.d

-rw-r--r--.  1 root root 6545 Dec 12 22:05 protocols

drwxr-xr-x.  2 root root  79 Dec 12 22:05 pulse

drwxr-xr-x.  2 root root  23 Dec 12 22:05 purple

drwxr-xr-x.  2 root root  35 Dec 12 22:05 python

[root@centos7 ~]#

未加 -R的效果如下:

[root@centos7 ~]# cp /etc/p*[^[:digit:]] /tmp/cwx1/

cp: omitting directory ‘/etc/pam.d’

cp: omitting directory ‘/etc/pcp’

cp: omitting directory ‘/etc/pki’

cp: omitting directory ‘/etc/plymouth’

cp: omitting directory ‘/etc/pm’

cp: omitting directory ‘/etc/popt.d’

cp: omitting directory ‘/etc/postfix’

cp: omitting directory ‘/etc/ppp’

cp: omitting directory ‘/etc/prelink.conf.d’

cp: omitting directory ‘/etc/profile.d’

cp: omitting directory ‘/etc/pulse’

cp: omitting directory ‘/etc/purple’

cp: omitting directory ‘/etc/python’

[root@centos7 ~]# ll /tmp/cwx1/

total 60

-rw-r--r--. 1 root root  68 Dec 12 22:22 papersize

-rw-r--r--. 1 root root 2411 Dec 12 22:22 passwd

-rw-r--r--. 1 root root 2411 Dec 12 22:22 passwd-

-rw-r--r--. 1 root root 1362 Dec 12 22:22 pbm2ppa.conf

-rw-r--r--. 1 root root 6460 Dec 12 22:22 pcp.conf

-rw-r--r--. 1 root root 6662 Dec 12 22:22 pcp.env

-rw-r--r--. 1 root root 2872 Dec 12 22:22 pinforc

-rw-r--r--. 1 root root 6300 Dec 12 22:22 pnm2ppa.conf

-rw-r--r--. 1 root root  233 Dec 12 22:22 printcap

-rw-r--r--. 1 root root 1819 Dec 12 22:22 profile

-rw-r--r--. 1 root root 6545 Dec 12 22:22 protocols

三、 将/etc/issue文件中的内容转换为大写后保存至/tmp/issue.out文件中

[root@centos7 ~]# cat /etc/issue | tr "a-z" "A-Z" > /tmp/issue.out

[root@centos7 ~]# cat /tmp/issue.out                               

\S

KERNEL \R ON AN \M

[root@centos7 ~]# cat /etc/issue | tr "[:lower:]" "[:upper:]" > /tmp/issue.out1

[root@centos7 ~]# cat /tmp/issue.out1

\S

KERNEL \R ON AN \M

[root@centos7 ~]#

转化或删除字符用“ tr  ”命令,tr命令的常用格式如下:

tr [OPTION]... SET1 [SET2]

其中参数:

-c, --complement:反选设定字符。用字符集SET1的补集替换此字符集,要求字符是ASCII码

-d, --delete:删除指令字符

-s, --squeeze-repeats:缩减连续重复的字符成指定的单个字符

-t, --truncate-set1:削减 SET1 指定范围,使之与 SET2 设定长度相等

字符范围

指定字符串SET1或字符串SET2的内容时,只能使用单字符或字符串范围或列表。以下是可接受的字符串范围及列表:

[a-z] a-z内的字符组成的字符串。

[A-Z] A-Z内的字符组成的字符串。

[0-9] 数字串。

\octal 一个三位的八进制数,对应有效的ASCII字符。

[On] 表示字符O重复出现指定次数n。因此[O2]匹配OO的字符串。

tr中特定控制字符的不同表达方式

速记符含义八进制方式

\\ 反斜杠

\a Ctrl-G 铃声

\b Ctrl-H 退格符

\f Ctrl-L 走行换页

\n Ctrl-J 新行

\r Ctrl-M 回车

\t Ctrl-I tab键

\v Ctrl-X 水平制表符

CHAR1-CHAR2 :字符范围从 CHAR1 到 CHAR2 的指定,范围的指定以 ASCII 码的次序为基础,只能由小到大,不能由大到小。

[CHAR*] :这是 SET2 专用的设定,功能是重复指定的字符到与 SET1 相同长度为止

[CHAR*REPEAT] :这也是 SET2 专用的设定,功能是重复指定的字符到设定的 REPEAT 次数为止(REPEAT 的数字采 8 进位制计算,以 0 为开始)

[:alnum:]:字母和数字,可以用来替代'a-zA-Z0-9'

[:alpha:]:字母,可以用来替代'a-zA-Z'

[:cntrl:]:控制(非打印)字符

[:digit:]:数字,可以用来替代'0-9'

[:graph:]:图形字符

[:lower:]:小写字母,可以用来替代'a-z'

[:print:]:可打印字符

[:punct:]:标点符号

[:space:]:空白字符

[:upper:]:大写字母,可以用来替代'A-Z'

[:xdigit:]:十六进制字符

(1)将/root/下文件列表,显示成一行,并文件名之间用空格隔开

(2)计算1+2+3+..+99+100的总和

(3)将PATH变量每个目录显示在独立的一行


(4)将文件/etc/centos-release中每个单词(由字母组成)显示在独立的一行,并无空行


四、 请总结描述用户和组管理类命令的使用方法并完成以下练习:

1:Linux用户和组的主要配置文件:

/etc/passwd:用户及其属性信息(名称、UID、主组ID等)

/etc/group:组及其属性信息

/etc/shadow:用户密码及其相关属性

/etc/gshadow:组密码及其相关属性

:2:passwd文件格式:

login name:登录用名(wang)

passwd:密码 (x)

UID:用户身份编号 (1000)

GID:登录默认所在组编号 (1000)

GECOS:用户全名或注释

home directory:用户主目录 (/home/wang)

shell:用户默认使用shell (/bin/bash)

:3:shadow文件格式:

登录用名

用户密码:一般用sha512加密

从1970年1月1日起到密码最近一次被更改的时间

密码再过几天可以被变更(0表示随时可被变更)

密码再过几天必须被变更(99999表示永不过期)

密码过期前几天系统提醒用户(默认为一周)

密码过期几天后帐号会被锁定

从1970年1月1日算起,多少天后帐号失效

4:用户管理命令:

(1):创建用户:useradd [options] LOGIN           默认值设定:/etc/default/useradd

-u UID

-o 配合-u 选项,不检查UID的唯一性

-g GID 指明用户所属基本组,可为组名,也可以GID

-c "COMMENT“ 用户的注释信息

-d HOME_DIR 以指定的路径(不存在)为家目录

-s SHELL 指明用户的默认shell程序,可用列表在/etc/shells文件中

-G GROUP1[,GROUP2,...] 为用户指明附加组,组须事先存在

-N 不创建私用组做主组,使用users组做主组

-r 创建系统用户 CentOS 6: ID<500,CentOS 7: ID<1000

-m 创建家目录,用于系统用户

-M 不创建家目录,用于非系统用户

newusers passwd格式文件 批量创建用户

chpasswd 批量修改用户口令

(2):修改用户属性: usermod [OPTION] login

-u UID: 新UID

-g GID: 新主组

-G GROUP1[,GROUP2,...[,GROUPN]]]:新附加组,原来的附加组将会被

覆盖;若保留原有,则要同时使用-a选项

-s SHELL:新的默认SHELL

-c 'COMMENT':新的注释信息

-d HOME: 新家目录不会自动创建;若要创建新家目录并移动原家数据,

同时使用-m选项

-l login_name: 新的名字

-L: lock指定用户,在/etc/shadow 密码栏的增加 !

-U: unlock指定用户,将 /etc/shadow 密码栏的 ! 拿掉

-e YYYY-MM-DD: 指明用户账号过期日期

(3):删除用户    userdel [OPTION]... login

                                 -r: 删除用户家目录

(4):   查看用户相关ID信息:  id [OPTION]... [USER]

                                                    -u: 显示UID

                                                    -g: 显示GID

                                                    -G: 显示用户所属的组的ID

                                                   -n: 显示名称,需配合ugG使用

(5)设置密码    

 passwd [OPTIONS] UserName: 修改指定用户的密码

常用选项:

-d:删除指定用户密码

-l:锁定指定用户

-u:解锁指定用户

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

-f:强制操作

-n mindays:指定最短使用期限

-x maxdays:最大使用期限

-w warndays:提前多少天开始警告

-i inactivedays:非活动期限

--stdin:从标准输入接收用户密码            示例:echo "PASSWORD" | passwd --stdin USERNAME

(6)chage [OPTION]... LOGIN            修改用户密码策略

常用选项:

-d LAST_DAY

-E --expiredate EXPIRE_DATE

-I --inactive INACTIVE                  活跃时间

-m --mindays MIN_DAYS             密码最小使用期限

-M --maxdays MAX_DAYS           密码最大使用期限

-W --warndays WARN_DAYS      密码警告时间

-l 显示密码策略

示例:

chage -d 0 tom 下一次登录强制重设密码

chage -m 0 –M 42 –W 14 –I 7 tom

chage -E 2016-09-10 tom

chfn 指定个人信息

chsh 指定shell

(7)创建组

 groupadd [OPTION]... group_name

-g GID 指明GID号;[GID_MIN, GID_MAX]

-r 创建系统组

(8)组属性修改:groupmod

groupmod [OPTION]... group

-n group_name: 新名字

-g GID: 新的GID

(9)组删除:groupdel

      groupdel GROUP

(10)gpasswd [OPTION] GROUP             更改组密码

-a user 将user添加至指定组中

-d user 从指定组中移除用户user

-A user1,user2,... 设置有管理权限的用户列表

newgrp命令:临时切换主组

如果用户本不属于此组,则需要组密码

(11)groupmems [options] [action]                更改和查看组成员

options:

-g, --group groupname 更改为指定组 (只有root)

actions:

-a, --add username 指定用户加入组

-d, --delete username 从组中删除用户

-p, --purge 从组中清除所有成员

-l, --list 显示组成员列表

groups [OPTION].[USERNAME]... 查看用户所属组列表

5、创建组distro,其GID为2019;

6、创建用户mandriva,其ID为1005;基本组为distro

7、创建用户mageia,其ID为1100,家目录为/home/linux

8、给用户mageia添加密码,密码为mageedu,并设置用户密码7天后过期

9、删除mandriva,保留其家目录;

10、创建用户slackware,其ID为2002,基本组为distro。附加组为peguin;

11、修改slackware的属性为shell为/bin/tcsh

12、为用户slackware新增附加组admins。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 199,636评论 5 468
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 83,890评论 2 376
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 146,680评论 0 330
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 53,766评论 1 271
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 62,665评论 5 359
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 48,045评论 1 276
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 37,515评论 3 390
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,182评论 0 254
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 40,334评论 1 294
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,274评论 2 317
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 37,319评论 1 329
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,002评论 3 315
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 38,599评论 3 303
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 29,675评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 30,917评论 1 255
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 42,309评论 2 345
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 41,885评论 2 341

推荐阅读更多精彩内容