Linux实验 系统管理(一)

  • 实验目的:
  1. 掌握Linux系统文件检索、排序、查找命令;
  2. 掌握Linux系统文件的特殊权限及文件默认权限umask掩码;
  3. 掌握Linux系统用户和组管理、配置文件和常用命令。

  • 实验内容:

在VMware中启动已经安装好的CentOS,本地登录root账号,并在桌面上打开终端,完成以下任务,截图并粘贴于以下空行中。

或者在启动CentOS后,打开putty或者MobaXterm,远程登录root账号,完成以下任务,截图并粘贴于以下空行中。

  1. grep与正则表达式的练习

grep格式: grep [选项] 字符串 [文件…]

注:需要查找的字符串最好加上引号

grep的常用选项:

-i :忽略大小写(ignore case)

-v :反过来(invert),只打印没有匹配的,而匹配的反而不打印

-n :显示行号

-w :被匹配的文本只能是单词,而不能是单词中的某一部分,如文本中有liker,而我搜寻的只是like,就可以使用-w选项来避免匹配liker

-c :显示总共有多少行被匹配到了,而不是显示被匹配到的内容,注意如果同时使用-cv选项是显示有多少行没有被匹配到

-A  n:显示匹配到的字符串所在的行及其后n行,after

-B  n:显示匹配到的字符串所在的行及其前n行,before

-C  n:显示匹配到的字符串所在的行及其前后各n行,context

正则表达式的模式匹配字符

元字符

作用

.

匹配除了换行符外任意一个字符。例如:s..d会匹配在s和d这两个字母之间一定有两个字符的字符串所在的行。

*

匹配前一个字符0次或任意多次。例如:aa*匹配至少包含有一个a的行。

^

匹配行首。例如:^hello会匹配以hello开头的行。

$

匹配行尾。例如:hello$会匹配以hello结尾的行。

[]

匹配中括号中指定的任意一个字符,只匹配一个字符。 例如:[aoeiu] 匹配任意一个元音字母,[0-9] 匹配任意一位数字, [a-z][0-9]匹配小写字和一位数字构成的两位字符。

[^]

匹配除中括号的字符以外的任意一个字符。例如:[^0-9] 匹配任意一位非数字字符,[^a-z] 表示任意一位非小写字母。

\

转义符。用于去掉有特殊意义的元字符的含义,恢复其原义。

{n}

匹配前一个字符恰好出现n次。例如:[0-9]{4} 匹配4位数字,[1][3-8][0-9]{9} 匹配手机号码。使用时需要在大括号前加上\。

{n,}

匹配前一个字符至少出现于n次。例如: [0-9]{2,} 匹配2位及以上的数字。使用时需要在大括号前加上\。

{n,m}

匹配前一个字符至少出现n次,最多出现m次。例如: [a- z]{6,8} 匹配6到8位的小写字母。使用时需要在大括号前加上\。

完成以下练习:

利用SSH远程工具将myrefile.txt的文本文件复制到虚拟机中的/temp目录中。

查看此文件的内容。

匹配此文件中以love开头的所有行。

匹配此文件中以love.结尾的所有行。

匹配此文件中含有love或Love的行,并显示所在行号。

匹配此文件中o字符重复出现3次的行,并显示所在行号。

匹配此文件中o字符重复2到4次的行。

匹配此文件中出现you的行和其后1行,并显示所在行号。

匹配此文件中所有以大写字母开头的行,并显示所在行号。

匹配此文件中所有以英文句点“.”结尾的行。(提示:可以结合[]试试)

匹配此文件中所有含有单词love或Love的行。(提示:-w,注意与6) 的不同)

匹配此文件中所有仅由4个小写字母的单词所在的行(-w)。

find命令的练习(类似命令locate)

find格式:find [路径……] [选项] [表达式]

常用选项:

-name:按文件名,-iname忽略大小写

-user:按文件属主(拥有者)名称

-type:按文件类型

f   普通文件

d   目录

b   块文件(缓冲)

c   字符文件(不缓冲)

l   符号链接

p   命名管道(FIFO)

s   套接字

-size:按文件大小

-mtime:按文件修改时间(单位:天)

-mtime n : 列出在n天之前的“一天之内”被更改过内容的文件名

-mtime +n : 列出在n天之前(不含n天本身)被更改过内容的文件名

-mtime -n : 列出在n天之内(含n天本身)被更改过内容的文件名

-atime:按文件访问(存取)时间(单位:天)

-perm:按权限

完成以下练习:

在根目录/下查找 大于2MB的文件。只截取前5个文件。

在根目录/下查找3天内没有访问过的目录。只截取前5个文件。

在根目录/下查找所有以.sh为扩展名的文件。只截取前5个文件。

在根目录/下查找所有以.sh为扩展名且文件属主为root的文件。只截取前5个文件。

在根目录/下将查找到的超过30天没有访问过文件以长格式的详细格式写入文件名为over30.txt的文件中。

find  /tmp  -atime  +30  -exec ls -l {} \; > over30.txt

其中,{}代表的是由 find 找到的内容,找到的结果会被放置到 {} 位置中。

“-exec”和“\;” 是关键字,代表find之后额外动作的开始(-exec)和结束(\;),在这中间的就是find指令的额外动作。因为“;”在bash的环境下是有特殊意义的,因此需要使用转义符——反斜线\。

在/tmp目录下用touch命令一次创建三个空文件,文件名分别为test1、test2、test3。再利用通配符查找这三个文件,并同时将这三个文件删除。(提示:类似上一题,使用 -exec      {} \;)

sort命令的练习

sort格式:sort [选项] [文件名]

常用选项:除了教材介绍的选项外,这里补充两个选项

-f:忽略字符的大小写

-t:指定排序时所用的栏位(列)分隔符。如 -t :,表示以“:”作为栏位分隔符

完成以下练习:

利用SSH远程工具将myrsort.txt的文本文件复制到虚拟机中的/tmp目录中。

查看此文件的内容。

对此文件按每行的第一个字符进行排序输出。

对此文件按每行的第一个字符进行逆序输出。

对此文件以“:”作为分隔符的第3列,按字符进行排序输出。

对此文件以“:”作为分隔符的第3列,按数字进行排序输出。

对此文件以“.”作为分隔符的第2列,按数字进行排序输出。

查看系统中root用户和普通用户的umask掩码分别是多少。

切换到root用户,在/tmp目录下新建一个空文件和一个目录,分别查看它们的默认权限分别是什么?

模仿查看passwd的方法,查看自己虚拟机中CentOS7中四个主要配置文件的前后各5行,并截图于每题的空行处,注意理解文件中各字段的含义。

passwd

head -5 /etc/passwd; tail -5 /etc/passwd

shadow

group

gshadow

账户和组的管理命令的练习。

账户管理命令:useradd、usermod、userdel、passwd

组管理命令:groupadd、groupmod、gropudel、gpasswd

创建普通用户Tom,同时设置其过期日期(自行设定),格式为2021-10-30。接着查看/etc/passwd文件中查看刚刚添加的用户(在文件的最后)。由于没有修改有关的默认值,注意查看此用户主目录、所在组等默认信息。

为新用户Tom设置密码,密码自行设定(管理员给普通用户设置密码时,即使密码过短或过于简单,在提示出错时,再重新输入相同的密码即可)。

切换到用户Tom,并用设置好的密码登录,登录后修改自己的密码。

切换到root用户,创建一个名为gr_R的普通组,并查看/etc/group最后一行是否添加成功。

将用户Tom添加到gr_R这个普通组中(gpasswd命令),并查看/etc/group最后一行是否添加成功。

锁定用户Tom的账号,切换到用户Tom,查看是否可以登录。

切换到root用户,解除对用户Tom的锁定,并切换到用户Tom,查看是否可以登录。

删除用户Tom,并在/etc/passwd中查看结果。(若提示该用户正在使用某进程,可使用ctrl+d(或输入exit)退出root用户,系统会自动回到Tom用户;再次使用ctrl+d退出Tom用户,此时系统会自动返回到root用户,此时可正常删除用户。如若不行,重复上述过程再试)

删除普通组gr_R,并在/etc/group中查看结果。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/606539.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

Docker Compose常用命令与属性

大家好,今天给大家分享Docker Compose的常用命令,以及docker-compose文件的属性。Docker Compose 是一个用于定义和运行多容器 Docker 应用应用的重要工具。它通过一个配置文件(docker-compose.yml)来详细定义多个容器之间的关联、…

拼多多投产比高了好还是低了好

投产比是衡量店铺经济效益和可行性的重要指标,它通过比较投入和产出(销售额)来反映店铺的盈利能力,一个高的投产比意味着相对较小的投入获得了较大的销售额,表明店铺的经济效益较好。要提升投产比,商家可以…

模型查询器在使用别名后不能使用tp6

在我们定义了模型的查询器时,再通过模型进行连表加别名的时候,使用查询器,查询器会没办法使用; 那我们可以将查询器前缀增加表名或者__TABLE__ 以上两种方式都可以,个人建议使用__TABLE__,因为这个查询器可…

蜜蜂收卡系统 加油卡充值卡礼品卡自定义回收系统源码 前后端开源uniapp可打包app

本文来自:蜜蜂收卡系统 加油卡充值卡礼品卡自定义回收系统源码 前后端开源uniapp可打包app - 源码1688 卡券绿色循环计划—— 一项旨在构建卡券价值再利用生态的社会责任感项目。在当前数字化消费日益普及的背景下,大量礼品卡、优惠券因各种原因未能有效…

网络工程师必备:静态路由实验指南

大家好,这里是G-LAB IT实验室。今天带大家学习一下华为静态路由实验配置 01、实验拓扑 02、实验需求 1.R1环回口11,1,1.1模拟PC1 2.R2建立2个环回口模拟Server server-1: 22,1,1.1 server-2: 44.1.1.1 3.要求使用静态路由实现全网互通 PC1去往server-1从R3走…

HA-MAc,透明质酸-甲基丙烯酸酯可用于制备具有交联能力的透明质酸基材料

【基本信息】 Hyaluronate Methacrylate(甲基丙烯酸酯化透明质酸,简称HA-MAc)是一种重要的生物材料 中文名称:甲基丙烯酸酯化透明质酸、透明质酸-甲基丙烯酸酯 英文名称:Hyaluronate Methacrylate、HA-MAc 分子量&…

电能表采用无线通信的好处

电能表采用无线通信的好处涉及多个方面,从提高数据传输的效率和实时性、增强系统的灵活性和可扩展性,到优化能源管理和提高安全性等方面,都展现了其独特的优势。 一、提高数据传输的效率和实时性 传统的有线通信方式在电能表数据传输中存在…

阿赵UE引擎C++编程学习笔记——信息打印输出

大家好,我是阿赵。   在之前介绍HelloWorld的时候,使用了一个打印的命令,把HelloWorld输出到输出日志里面。   对于我们编写程序代码来说,有2个手段是对程序差错非常重要的,一个是断点,另外一个是输出日…

地下水位自动监测设备:矿井水文监测系统

TH-DSW2地下水位自动监测设备具有实时性、连续性和自动化等特点,广泛应用于地下水深井水位测量、矿山深井水位测量、地热井水位测量。可以实现对地下水位的24小时不间断监测。它在城市供水和水资源管理、农业灌溉、地质和地下探测等领域具有广泛的应用。 在城市供水…

【python】基于岭回归算法对学生成绩进行预测

前言 在数据分析和机器学习领域,回归分析是一种预测连续数值的监督学习技术。当数据特征与目标变量之间存在线性关系时,线性回归模型尤其有用。然而,当特征数量多于样本数量,或者特征之间存在多重共线性时,普通最小二…

液压阀比例电磁铁控制放大器

液压阀比例电磁铁控制放大器是一种将电信号精确转换为液压动力的技术,用于实现对液压系统的精细控制。与传统的开关型电磁铁不同,比例电磁铁可以实现连续控制,允许进行微调以适应不同的控制需求。比例液压阀包括比例压力阀、比例流量阀等&…

融知财经:期货交易原理是怎样的?期货交易有哪些特征?

期货的原理是基于对某期货品种未来走势的判断而形成对其合约的买卖交易,因此期货可以解释为买涨或买跌。买涨,即看多交易,预期某期货品种未来价格上涨而进行的买入开仓交易;买跌,即看空交易,预期某期货品种…

【Python深度学习(第二版)(4)】神经网络的基本数据结构-张量概念、阶数、使用NumPy操作张量、张量种类、样本轴等概念

文章目录 一. 张量概念二. 张量的阶数1. 标量(0阶张量)2. 向量(1阶张量)2. 矩阵(2阶张量)3. 3阶张量与更高阶的张量 三. 张量属性及操作张量1. 张量的关键属性2. 在NumPy中操作张量2.1. 选择某个图片数据2.…

班级综合测评|基于Springboot+vue的班级综合测评管理系统(源码+数据库+文档)

目录 基于Springbootvue的“智慧食堂”系统 一、前言 二、系统设计 三、系统功能设计 1 管理员功能模块 2学生功能模块 3教师功能模块 四、数据库设计 五、核心代码 六、论文参考 七、最新计算机毕设选题推荐 八、源码获取: 博主介绍:✌️大…

Python应用:让生活更智能

随着科技的进步,Python已成为一种非常受欢迎的编程语言,它在数据分析、人工智能、Web开发等领域有着广泛的应用。今天,我们将探讨一个Python应用的例子,这个应用将帮助我们更智能地管理日常生活。 应用名称:智能生活助…

Kubernetes最小单元Pod的生命周期

1.1 Pod生命周期 1.1.1 过程及状态 Pod 的生命周期管理是 Kubernetes 集群中非常重要的一部分,它涉及到 Pod 从创建到销毁的整个过程。下面是 Pod 生命周期中各个阶段的简要说明: Pod 创建过程:当一个 Pod 被创建时,Kubernetes 会…

三层架构实验

交换部分 第一个步骤配 Eth-Trunk,目的是:将两条线绑在一起 sw和1sw2上配置 [sw1]interface Eth-Trunk 0 //创建隧道 [sw1-Eth-Trunk0]q [sw1]int g 0/0/2 [sw1-GigabitEthernet0/0/2]eth-trunk 0 //进入接口划分隧道 [sw1-GigabitEthernet0/0/2]…

JavaScript算法描述【排序与搜索】六大经典排序|搜索旋转排序数组|在排序数组中查找元素的第一个和最后一个位置、数组中的第K个|

🐧主页详情:Choice~的个人主页 文章目录 搜索旋转排序数组方法一 二分查询最大最小值思路详解代码方法二 二分查询中间数 在排序数组中查找元素的第一个和最后一个位置、数组中的第K个最大元素和颜色分类在排序数组中查找元素的第一个和最后一个位置方法…

【LeetCode刷题】153. 寻找旋转排序数组中的最小值

1. 题目链接2. 题目描述3. 解题方法4. 代码 1. 题目链接 153. 寻找旋转排序数组中的最小值 2. 题目描述 3. 解题方法 根据题目分析,可以明确一点,无论该数组如何旋转,都会有这样的一个性质,就是nums[0] > nums[n-1]&#xf…

CST软件的界面快捷键汇总与操作窗口【入门基础】

CST界面操作快捷键 利用鼠标和键盘快捷键的GUI操作 View > Mouse Control 本章节介绍,使用鼠标和键盘快捷键,操作CST软件的2D/3D GUI (Graphical User Interface图形用户界面)的方法。为了快速方便地操作2D/3D Model,建议熟悉本章节的内…