【Linux实践】实验四:Shell实用功能及文件权限

news/2024/9/29 1:22:08/

【Linux实践】实验四:Shell实用功能及文件权限

  • 实验目的
  • 实验内容
  • 实验步骤及结果
    • 1. 别名
    • 2. 输出和重定向
    • 3. 分页显示
    • 4. 权限(续)
      • ① 文件/目录管理
      • ② 用户管理
      • ③ 组管理
    • 5. 链接

实验目的

1.掌握LINUX中Shell的实用功能,命令行自动补全,命令历史记录,命令别名,管道及输入输出重定向。
2.掌握文件权限设置的方法,以及如何修改文件所有者及用户。
3.掌握LINUX下建立链接文件的方法。

实验内容

1、使用命令“cat /etc/named.conf”设置为别名named,然后再取消别名。
2、使用echo命令和输出重定向创建文本文件/root/nn,内容是hello,然后再使用追加重定向输入内容为word。
3、使用管道方式分页显示/etc/passwd的内容。
4、分别用文字设定法和数字设定法,对/root/ab文件设置权限,所有者为读取、写入和执行权限,同组用户为读取和写入权限,其他用户没有任何权限。
5、将文件/root/ab所有者更改为用户zhangsan。
6、将目录/root/b连同它的下级文件/root/b/cc的所有者和用户组一起更改为newuser。
7、使用命令创建/root/a文件的硬链接文件/root/b和软链接文件/root/c,并用ls –l命令查看输出信息的第二列(链接数)以及第五列(文件尺寸)。

实验步骤及结果

1. 别名

  • 在Shell中,别名是为命令设置的简短替代名称。可以使用alias命令来(临时)创建别名。
  • 格式:alias 别名='原命令'

这里给命令cat /etc/named.conf设置了别名named。
在这里插入图片描述
现在直接输入 named ,就会执行 cat /etc/named.conf
在这里插入图片描述

  • 要取消一个别名,使用unalias命令。

现在取消 named 别名,取消后,输入named将会提示找不到命令。
在这里插入图片描述

  • alias 命令只能用于临时创建和使用别名,关闭终端后,别名自动取消。要想永久定义别名,需要修改/root/.bashrc文件。

2. 输出和重定向

本小点在 实验三 中已经提到,这里直接展示结果。

  • 使用echo命令和输出重定向>创建文本文件,文本内容为 hello。
    在这里插入图片描述
  • 追加内容,使用 >>
    在这里插入图片描述

3. 分页显示

  • 管道符号:|

    • 功能:将一个命令的输出通过管道作为另一个命令的输入
    • 左端写数据,右端读数据
    • 常用的管道命令有:
      more :分屏显示内容
      grep :再命令执行结果的基础上查询指定的文本
  • more功能:用于分屏显示文件内容,每次只显示一页内容

    • 适合 查看内容较多 的文本文件
按键含义
Space显示手册页滚到下一屏
Enter一次滚动手册页的一行
B回滚一屏
F前滚一屏
Q退出
/word搜索 word 字符串

在这里插入图片描述

  • 按 Q 可直接退出。

4. 权限(续)

在实验三中有接触到文件权限,这里将更详细的描述文件权限。

  • 在Linux系统中,权限是控制用户对文件和目录访问的一种机制。
  • Linux 权限主要涉及三个方面:用户(User)、组(Group)和其他(Other)。
序号命令作用
01chown修改拥有者
02chgrp修改组
03chmod修改权限
chown 用户名 文件名|目录名
chgrp -R 组名 文件名|目录名
chmod -R 755 文件名|目录名

① 文件/目录管理

  1. Linux权限分类:读(r)、‌写(w)和‌执行(x

    权限英文缩写数字代号
    readr4
    writew2
    执行excutex1
    无权限-0
  2. 表示法有两种:字符表示法、数字表示法

    字符表示法数字表示法二进制说明
    ---0000无权限
    r--4100只读
    -w-2010仅可写
    --x1001仅可执行
    rw-6110可读可写
    r-x5101可读可执行
    -wx3011可写可执行
    rwx7111可读可写可执行

    由此可以看出字符表示法转数字表示法的规律。

  3. 设定权限从左往右,每三个字符(或每个数字)为一类,分别是 所属用户、组、其他。
    rw--r--r-- 表示:所属用户可读可写,所属组可读,其他用户可读。
    后面有2个 root ,第一个代表所属用户为root,第二个代表属于root组。在这里插入图片描述

  4. 使用chmod命令设置权限:

    • 格式:chmod [ugoa][+-=][rwxX] 文件|目录
    • 通过数字或符号方式设置权限。
    • 数字方式:r=4, w=2, x=1, -=0,将权限值相加得到最终权限。这种方式直观易懂,适用于简单的权限设置。
    • 符号方式:u(user)、g(group)、o(other)、a(all),+(添加权限)、-(移除权限)、=(设置权限)。这种方式更加灵活,可以精确地控制每个用户的权限。
  • 用文字设定法对 /root/ab 文件设置权限:所有者为读取、写入和执行权限,同组用户为读取和写入权限,其他用户没有任何权限。
    在这里插入图片描述

  • 用数字设定法
    在这里插入图片描述

② 用户管理

  • 创建用户 / 删除用户 / 修改其他用户密码 的终端命令都需要使用 sudo
序号命令作用说明
01useradd -m -g 组 新建用户名添加新用户-m 自动创建用户家目录;-g 指定用户所在的组,否则会建立一个同名的组
02passwd 用户名设置用户密码如果是普通用户,直接用 passwd 可以修改自己的账户密码
03userdel -r 用户名删除用户-r 选项会自动删除用户家目录
04cat /etc/passwd | grep 用户名确认用户信息新建用户后,用户信息会保存在 /etc/passwd 文件中
  • 创建用户时,如果没有添加 -m 选项指定新用户的家目录,应删除用户,重新创建

  • 使用chown命令设置用户或用户组:

    • 格式:chown 选项 用户:组 文件|目录
    • 常用选项 -R : 对目录下的所有文件与子目录进行相同的拥有者变更
  • 简单创建一个用户 zhangsan(同时会自动创建一个zhangsan组,如需指定需加-g)。
    在这里插入图片描述

  • 查看是否有zhangsan这个用户
    在这里插入图片描述

  • 将文件/root/ab所有者更改为用户zhangsan
    在这里插入图片描述

③ 组管理

  • 创建 / 删除组 的终端命令都必须通过 sudo 执行
序号命令作用
01groupadd 组名添加组
02groupdel 组名删除组
03cat /etc/group确认组信息
04chgrp 组名 文件 / 目录名修改文件 / 目录的所属组
  • 组信息保存在 /etc/group 文件中
  • /etc 目录时专门用来保存 系统配置信息 的目录
  • 同样可以用chown修改文件或目录的所属组。

创建用户newuser,创建时会自动创建newuser组。
在这里插入图片描述
将目录/root/b连同它的下级文件/root/b/cc的所有者和用户组一起更改为newuser
在这里插入图片描述

5. 链接

  • ln 功能:为某一个文件在另外一个位置建立一个同步的链接。
  • 常用语法:ln [选项] 源文件 目标文件
  • 常用参数-s:对源文件建立符号(软)链接。
  1. 软链接:软链接文件是一种特别类型的文件,它们是一个文本文件,文件内部只包含了被链接文件的路径名。类似于windows系统中的快捷方式。

  2. 硬链接:文件创建硬链接只能创建在同一磁盘或磁盘分区下,不能创建在不同的磁盘或磁盘分区。硬链接不占磁盘空间,且目录不能创建硬链接。

  • 创建/root/a文件的硬链接文件/root/b
    在这里插入图片描述
  • 创建/root/a文件的软链接文件/root/c
    在这里插入图片描述
  • 查看文件信息,第二列(链接数)、第五列(文件尺寸)。
    在这里插入图片描述

http://www.ppmy.cn/news/1531339.html

相关文章

【JavaEE精炼宝库】HTTP | HTTPS 协议详解

文章目录 一、HTTP 简介二、HTTP 协议格式:2.1 抓包工具的使用:2.2 HTTP 请求报文格式:2.3 HTTP 响应报文格式:2.4 HTTP 协议格式总结: 三、HTTP 请求详解:3.1 刨析 URL:3.2 方法(method)&#…

STL与PLY格式转化

一、STL转化为PLY 利用PCL库中vtk_lib_io实现&#xff0c;#include <pcl/io/vtk_lib_io.h>&#xff0c;C语言。 提供一个用于测试的数据&#xff1a; 通过网盘分享的文件&#xff1a;ply_stl 链接: https://pan.baidu.com/s/1xnO5s2kiUf0Cs35XVyfTHA?pwdxmax 提取码:…

微服务的优点及在云原生时代的合理落地方式

云计算de小白 那么&#xff0c;微服务到底能给业务带来什么好处&#xff1f;在云原生时代&#xff0c;如何更合理地实现微服务&#xff1f; 架构没有好坏之分&#xff0c;只有适合与不适合。然而&#xff0c;当我们对比微服务架构与单体架构时&#xff0c;可以发现微服务有以…

Xcode 16 上传AppStore遇到第三方库 bitcode 的问题

Xcode 16 上传AppStore遇到第三方库 bitcode 的问题 最近两天更新了Xcode 16&#xff0c;然后正好要发布新版本的App&#xff0c;打包Adhoc没问题&#xff0c;但是上传AppStoreConnect或者TestFlight就不行解决方案参考资料 最近两天更新了Xcode 16&#xff0c;然后正好要发布新…

足球预测模型理论:足球数据分析——XGBoost算法实战

简介&#xff1a;本文将探讨如何使用XGBoost算法进行足球数据分析&#xff0c;特别是足球运动员身价估计。我们将通过实例和生动的语言&#xff0c;解释XGBoost算法的原理和实际应用&#xff0c;帮助读者理解复杂的技术概念&#xff0c;并提供可操作的建议和解决问题的方法。 足…

Android LiveData 数据倒灌

相关类型的文章很多&#xff0c;这里只做个人总结和其余的方法推荐 1.什么是数据倒灌&#xff1f; 所谓的“数据倒灌”&#xff1a;其实是类似粘性广播那样&#xff0c;当新的观察者开始注册观察时&#xff0c;会把上次发的最后一次的历史数据传递给当前注册的观察者。 一方…

汽车信息安全 -- 存到HSM中的密钥还需包裹吗?

目录 1.车规芯片的ROM_KEY 2.密钥加密与包裹 3.瑞萨RZ\T2M的密钥导入 4.小结 在车控类ECU中&#xff0c;我们通常把主控芯片MCU中的HSM以及HSM固件统一看做整个系统安全架构的信任根。 所以大家默认在HSM内部存储的数据等都是可信的&#xff0c;例如CycurHSM方案中使用HSM…

如何在银河麒麟操作系统中关闭IPv6

如何在银河麒麟操作系统中关闭IPv6 1、临时关闭IPv62、永久关闭IPv6方法一&#xff1a;通过sysctl.conf方法二&#xff1a;通过GRUB配置 1、3、 验证IPv6是否已关闭 &#x1f496;The Begin&#x1f496;点点关注&#xff0c;收藏不迷路&#x1f496; 在当前的网络环境中&#…