【Linux实践】实验三:LINUX系统的文件操作命令

【Linux实践】实验三:LINUX系统的文件操作命令

  • 实验目的
  • 实验内容
  • 实验步骤及结果
    • [1. 切换和查看目录](#1. 切换和查看目录)
    • [2. 显示目录下的文件](#2. 显示目录下的文件)
    • [3. 创建和删除目录](#3. 创建和删除目录)
      • [① mkdir](#① mkdir)
      • [② rm](#② rm)
      • [③ rmdir](#③ rmdir)
    • [4. 输出和重定向](#4. 输出和重定向)
      • [① 输出](#① 输出)
      • [② 重定向 > 和 >>](#② 重定向 > 和 >>)
    • [5. 查看文件内容](#5. 查看文件内容)
      • [① cat](#① cat)
      • [② head](#② head)
    • [6. 权限](#6. 权限)
    • [7. 复制](#7. 复制)
    • [8. 排序](#8. 排序)
    • [9. 文件类型](#9. 文件类型)
    • [10. 匹配(搜索)字符](#10. 匹配(搜索)字符)

这章开始要涉及到命令了,其他关于命令的内容可以看我 2021年写的笔记。
传送 ------> Linux 从零开始

实验目的

1、掌握LINUX下文件和目录操作命令:cd、ls、mkdir、rmdir、rm。

2、掌握LINUX下文件信息显示命令:cat、more。

3、掌握LINUX下文件复制、删除及移动命令:cp、mv。

4、掌握LINUX的文件检索、排序命令:grep、sort。

实验内容

1、使用命令切换到/etc目录,并显示当前工作目录路径。

2、使用命令显示/root目录下所有文件目录的详细信息,包括隐藏文件。

3、使用命令创建目录/root/linux,然后删除该目录。

4、使用命令cat用输出重定向在/root目录下创建文件abc,文件内容为"Hello,Linux!",并查看该文件的内容。

5、使用命令创建具有默认权限为744的目录/root/ak,然后将/root/abc文件复制到该目录中,最后将该目录及其目录下的文件一起删除。

6、查看文件/etc/passwd的前3行内容。

7、创建文件file1,文件内容有3行,分别为a、c、b,排序该文件数据,显示在屏幕上。

8、使用命令显示/etc/passwd文件的文件类型。

9、在文件/etc/passwd中搜索匹配字符"root"。

实验步骤及结果

1. 切换和查看目录

序号 命令 对应英文 作用
01 pwd print work directory 查看当前所在文件夹
02 cd [目录名] change directory 切换文件夹
  • cd 功能:更改当前的工作目录
  • 所有的 目录文件名 大小写敏感
命令 含义
cdcd ~ 切换到当前用户的主目录(/home/用户目录)
cd . 保持在当前目录不变
cd .. 切换到上级目录
cd - 可以在最近两次工作目录之间来回切换
  • cd /etc 切换到 /etc 目录
  • pwd 显示当前工作目录路径

2. 显示目录下的文件

命令 对应英文 作用
ls list 查看当前文件夹下的内容
  • 功能:列出目录的内容
  • . 开头的文件为隐藏文件
  • . 代表当前目录
  • .. 代表上一级目录
参数 含义
-a 显示指定目录下的所有子目录与文件,包括隐藏文件
-l 以列表方式显示文件的详细信息
-h 配合 -l 一起使用,以人性化的凡是显示文件大小
  • 使用命令显示/root目录下所有文件目录的详细信息,包括隐藏文件。

    因为root是超级用户的主目录,所以需要管理员权限,现在的权限不够,那就加 sudo

3. 创建和删除目录

序号 命令 对应英文 作用
01 mkdir 目录名 make directory 创建目录
02 rm 文件名 remove 删除指定的文件或目录
03 rmdir [选项] 目录名 remove directory 删除空目录

① mkdir

  • mkdir 功能:创建一个新的目录
  • 新建目录的名称不能 与当前目录中已有的目录或文件同名
选项 含义
-p 可以递归创建目录(例:mkdir ~/a/b/c/d
  • 使用命令创建目录/root/linux,操作root目录需要使用管理员权限。

② rm

  • rm 功能:删除文件或目录,不放入回收站,危险性较大。 sudo rm -rf /*
选项 含义
-r 递归地删除目录下的内容,删除文件夹 时必须加此参数
-f 强制删除,忽略不存在文件,无需提示
  • 使用命令删除目录/root/linux

③ rmdir

  • rmdir 命令只能删除空目录。如果目录中有文件或子目录,rmdir会报错并提示目录非空。
选项 含义
-p 递归删除目录及其所有父目录,如果父目录在删除最后一个子目录后变为空目录,则一并删除。
-v 显示删除每个目录的详细信息。

4. 输出和重定向

① 输出

  • 格式:echo 文字内容
  • echo 会再终端中显示参数指定的文字,通常会和 重定向 联合使用

② 重定向 > 和 >>

  • 功能:讲命令执行结果重定向到一个文件
  • 将本应显示在终端上的内容 输出 / 追加 到指定文件中
  • > 表示输出,会覆盖文件原有的内容
  • >> 表示追加,会将内容追加到已有文件的末尾

输出重定向在/root目录下创建文件abc,文件内容为"Hello,Linux!"。

因为操作的是 root 目录,依然需要管理员权限。

但是即使加上 sudo 依然没有提示权限不够。

所以这里使用 su 命令直接切换到管理员。如果不知道密码,可以输入sudo passwd root设置新密码。

5. 查看文件内容

序号 命令 对应英文 作用
1 cat 文件名 concatenate 查看文件内容、创建文件、文件合并、追加文件内容等功能
2 head [参数] [文件] head 查看文件的开头部分的内容

① cat

  • 功能:查看文件内容,创建文件,文件合并,追加文件内容等
  • 会一次显示所有的内容,适合 查看内容较少 的文本文件
  • 命令 nlcat -b 等价
选项 含义
-b 对非空输出行编号
-n 对输出的所有行编号

查看 /root/abc 文件中的内容。

② head

  • 功能:head 命令可用于查看文件的开头部分的内容
  • 有一个常用的参数 -n 用于显示行数,默认为 10,即显示 10 行的内容。
选项 含义
-q 隐藏文件名
-v 显示文件名
-c <数目> 显示的字节数
-n <行数> 显示的行数

查看文件 /etc/passwd 的前3行内容

6. 权限

序号 权限 英文 缩写 数字代号
01 read r 4
02 write w 2
03 执行 excute x 1
04 无权限 - 0
  • chmod 功能:修改 用户 / 组文件 / 目录 的权限
  • 命令格式:chmod +/-rwx 文件名|目录名

使用命令创建目录 /root/ak

给 /root/ak 赋予 744权限

7. 复制

序号 命令 对应英文 作用
1 cp 源文件 目标文件 copy 复制文件或目录
  • cp 功能:将给出的文件或目录复制到另一个文件或目录
  • 如果要复制到当前文件夹,不更改文件名,只加一个. cp ~/Documents/readme.txt .
选项 含义
-i 覆盖文件前提示
-f 若给出的原文件是目录文件,则将递归复制该目录下的所有目录和文件,目标文件必须是一个目录名

将 /root/abc 文件复制到 /root/ak 中

最后将该目录及其目录下的文件一起删除

8. 排序

  • sort 命令用于将文本文件内容加以排序。
  • sort 可针对文本文件的内容,以行为单位来排序。
常用选项 含义
-d 排序时,处理英文字母、数字及空格字符外,忽略其他的字符
-f 排序时,将小写字母视为大写字母
-n 依照数值的大小排序
-u 意味着是唯一的(unique),输出的结果是去完重了的
-r 以相反的顺序来排序
-o <输出文件> 将排序后的结果存入指定的文件

创建文件file1,文件内容有3行,分别为a、c、b

排序该文件数据,显示在屏幕上

9. 文件类型

  • file 命令用于辨识文件类型。
常用选项 含义
-b 输出结果时,不显示文件名称
-c 详细显示指令执行过程,便于排错或分析程序执行的情形
-L 直接显示符号连接所指向的文件的类别
-z 尝试去解读压缩文件的内容

使用命令显示/etc/passwd文件的文件类型

10. 匹配(搜索)字符

  • grep 功能:文本搜索工具
  • 格式:grep 搜索文本 文件名
  • 允许对文本文件按进行模式查找,所谓模式查找,也被称为正则表达式
选项 含义
-n 显示匹配行及行号
-v 显示不包括匹配文本的所有行(相当于求反)
-i 忽略大小写
  • 常用的两种模式查找
选项 含义
^a 行首,搜索以 a 开头的行
ke$ 行尾,搜索以 ke 结束的行

在文件/etc/passwd中搜索匹配字符"root"

相关推荐
2202_7544215414 分钟前
生成MPSOC以及ZYNQ的启动文件BOOT.BIN的小软件
java·linux·开发语言
努力的悟空41 分钟前
国土变更调查拓扑错误自动化修复工具的研究
运维·自动化
运维&陈同学1 小时前
【zookeeper03】消息队列与微服务之zookeeper集群部署
linux·微服务·zookeeper·云原生·消息队列·云计算·java-zookeeper
旦沐已成舟1 小时前
DevOps-Jenkins-新手入门级
服务器
周末不下雨2 小时前
win11+ubuntu22.04双系统 | 联想 24 y7000p | ubuntu 22.04 | 把ubuntu系统装到1T的移动固态硬盘上!!!
linux·运维·ubuntu
软件技术员2 小时前
Let‘s Encrypt SSL证书:acmessl.cn申请免费3个月证书
服务器·网络协议·ssl
哎呦喂-ll3 小时前
Linux进阶:环境变量
linux
耗同学一米八3 小时前
2024 年河北省职业院校技能大赛网络建设与运维赛项样题四
运维·网络
Rverdoser3 小时前
Linux环境开启MongoDB的安全认证
linux·安全·mongodb