【大数据技术基础 | 实验二】Linux基础:常用基本命令和文件操作

在这里插入图片描述

文章目录

    • 一、实验目的
    • 二、实验要求
    • 三、实验环境
    • 四、常用基本命令
      • 1、验证cd和pwd命令
      • 2、验证ls命令
      • 3、验证mkdir命令
      • 4、验证cp、mv和rm命令
    • 五、Linux文件操作
      • 1、验证touch命令
      • 2、验证cat命令
      • 3、验证more命令
    • 六、实验心得


一、实验目的

  1. 学会linux常用命令(cd,ls,pwd,mkdir,rm,cp,mv)的使用方法。
  2. 学会linux文件操作命令(touch,cat,more)的使用方法。

二、实验要求

  1. 掌握linux常用命令基本用法。
  2. 掌握linux文件操作命令基本用法。

三、实验环境

云创大数据实验平台

四、常用基本命令

1、验证cd和pwd命令

启动实验,连接OpenVPN后,登录master服务器,执行下列指令,验证Linux环境下的cd和pwd命令。

cd是打开某个路径的命令,也就是打开某个文件夹,并跳转到该处。命令格式为:cd path,path为你要打开的路径。其中,path有绝对路径和相对路径之分,绝对路径强调从/起,一直到所在路径。相对路径则相对于当前路径来说,假设当前家目录有etc文件夹(绝对路径应为/home/username/etc),如果直接执行命令cd etc则进入此文件夹,但若是cd /etc/则是进入系统etc ,多琢磨一下就可以理解了。另外在Linux中,.代表当前目录,..代表上级目录,因此返回上级目录可以使用命令cd ..

pwd命令是查看当前目录,并返回工作目录名字,是绝对路径名。

[root@master ~]# pwd        ### 查看当前目录
/root
[root@master ~]# cd  /usr/    ### 使用绝对路径跳转目录
[root@master usr]# pwd
/usr
[root@master usr]# cd  cstor  ### 使用相对路径跳转目录
[root@master cstor]# pwd
/usr/cstor
[root@master cstor]#

在这里插入图片描述

2、验证ls命令

ls意思为list,用于列举指定目录下的文件名称以及属性。

命令说明
ls ×××列出文件
ls 目录名 ×××列出目录名下的可见文件
ls -l 目录名 ×××列出目录名下的课件文件详细信息
ls -hl 目录名 ×××列出详细信息并以可读大小显示文件大小
ls -al 目录名 ×××列出所有文件(包括隐藏文件)的详细信息

值得注意的是,Linux中以.开头的文件或者文件夹都是隐藏文件或者隐藏文件夹。

[root@master ~]# ls .         ### 仅列出当前目录可见文件
anaconda-ks.cfg  dataset  original-ks.cfg
[root@master ~]# ls -l .       ### 列出当前目录可见文件详细信息
total 8
-rw------- 1 root root 3407 Sep 11 23:53 anaconda-ks.cfg
drwxr-xr-x 2 root root   41 Oct  9 15:50 dataset
-rw------- 1 root root 3221 Sep 11 23:53 original-ks.cfg
[root@master ~]# ls -hl .      ### 列出详细信息并以可读大小显示文件大小
total 8.0K
-rw------- 1 root root 3.4K Sep 11 23:53 anaconda-ks.cfg
drwxr-xr-x 2 root root   41 Oct  9 15:50 dataset
-rw------- 1 root root 3.2K Sep 11 23:53 original-ks.cfg
[root@master ~]# ls -al .      ### 列出所有文件(包括隐藏)的详细信息
total 28
dr-xr-x---  5 root root  178 Oct  9 15:50 .
drwxr-xr-x 17 root root  294 Oct 10 09:48 ..
-rw-r--r--  1 root root   18 Dec 29  2013 .bash_logout
-rw-r--r--  1 root root 1283 Oct 10 09:48 .bash_profile
-rw-r--r--  1 root root  176 Dec 29  2013 .bashrc
drwx------  3 root root   17 Oct  9 15:13 .cache
-rw-r--r--  1 root root  100 Dec 29  2013 .cshrc
drwxr-----  3 root root   19 Sep 28 15:32 .pki
-rw-r--r--  1 root root  129 Dec 29  2013 .tcshrc
-rw-------  1 root root 3407 Sep 11 23:53 anaconda-ks.cfg
drwxr-xr-x  2 root root   41 Oct  9 15:50 dataset
-rw-------  1 root root 3221 Sep 11 23:53 original-ks.cfg
[root@master ~]#

在这里插入图片描述

3、验证mkdir命令

mkdir用于新建文件夹。

参数说明
-p递归创建多级目录
-m建立目录的同时设置目录的权限
-z设置安全上下文
-v显示目录的创建过程
[root@master ~]# ls -l
total 8
-rw------- 1 root root 3407 Sep 11 23:53 anaconda-ks.cfg
drwxr-xr-x 2 root root   41 Oct  9 15:50 dataset
-rw------- 1 root root 3221 Sep 11 23:53 original-ks.cfg
[root@master ~]# mkdir folder
[root@master ~]# ls -l
total 8
-rw------- 1 root root 3407 Sep 11 23:53 anaconda-ks.cfg
drwxr-xr-x 2 root root   41 Oct  9 15:50 dataset
drwxr-xr-x 2 root root    6 Oct 10 09:57 folder
-rw------- 1 root root 3221 Sep 11 23:53 original-ks.cfg
[root@master ~]# ls -l folder/
total 0
[root@master ~]# mkdir -p folder/subfolder   ### -p参数的含义为:当父目录存在时忽略,若不存在则建立,用此参数可建立多级文件夹
[root@master ~]# ls -l folder/
total 0
drwxr-xr-x 2 root root 6 Oct 10 09:58 subfolder
[root@master ~]#

在这里插入图片描述

4、验证cp、mv和rm命令

cp意思为copy,用于将一个或多个文件或目录复制到指定位置。

参数说明
-f若目标文件已存在,则会直接覆盖原文件
-i若目标文件已存在,则会询问是否覆盖
-p保留源文件或目录的所有属性
-r递归复制文件和目录

mv意思为move,用于对文件进行剪切和重命名。

常用参数说明
-i若存在同名文件,则向用户询问是否覆盖
-f覆盖已有文件时,不进行任何提示
-b当文件存在时,覆盖前为其创建一个备份
-u当源文件比目标文件新,或者目标文件不存在时,才执行移动此操作

rm意思为remove,用于删除文件或目录,一次可以删除多个文件,或递归删除目录及其内的所有子文件。rm命令要谨慎的使用。

参数说明
-f强制删除(不二次询问)
-i删除前会询问用户是否操作
-r/R递归删除
-v显示指令的详细执行过程
[root@master ~]# cd /home/
[root@master home]# ls -l
total 0
[root@master home]# cp /root/dataset/area.csv /home/      ### 拷贝单个文件
[root@master home]# ls -l
total 272
-rw-r--r-- 1 root root 277422 Oct 10 10:07 area.csv
[root@master home]# cp /root/dataset/* /home/           ### 拷贝目录下所有文件
cp: overwrite '/home/area.csv'? y
[root@master home]# cp -r /root/folder/ /home/           ### 拷贝文件夹
[root@master home]# ls -l
total 2164
-rw-r--r-- 1 root root  277422 Oct 10 10:08 area.csv
drwxr-xr-x 3 root root      23 Oct 10 10:08 folder
-rw-r--r-- 1 root root 1933320 Oct 10 10:08 weather.csv
[root@master home]# mv area.csv area-bak.csv           ### 重命名文件,也可移动至其它目录
[root@master home]# ls -l
total 2164
-rw-r--r-- 1 root root  277422 Oct 10 10:08 area-bak.csv
drwxr-xr-x 3 root root      23 Oct 10 10:08 folder
-rw-r--r-- 1 root root 1933320 Oct 10 10:08 weather.csv
[root@master home]# mv folder newfolder               ### 重命名目录,也可移动至其它目录
[root@master home]# ls -l
total 2164
-rw-r--r-- 1 root root  277422 Oct 10 10:08 area-bak.csv
drwxr-xr-x 3 root root      23 Oct 10 10:08 newfolder
-rw-r--r-- 1 root root 1933320 Oct 10 10:08 weather.csv
[root@master home]# rm weather.csv                   ### 删除单个文件
rm: remove regular file 'weather.csv'? y
[root@master home]# ls -l 
total 272
-rw-r--r-- 1 root root 277422 Oct 10 10:08 area-bak.csv
drwxr-xr-x 3 root root     23 Oct 10 10:08 newfolder
[root@master home]# rm -f area-bak.csv                ### 强制删除单个文件(跳过确认步骤)
[root@master home]# ls -l
total 0
drwxr-xr-x 3 root root 23 Oct 10 10:08 newfolder
[root@master home]# rm -rf newfolder/subfolder/        ### 强制删除指定目录
[root@master home]# ls -l newfolder/
total 0
[root@master home]# touch a.txt b.txt c.txt             ### touch命令创建空文件
[root@master home]# ls -l
total 0
-rw-r--r-- 1 root root 0 Oct 10 10:11 a.txt
-rw-r--r-- 1 root root 0 Oct 10 10:11 b.txt
-rw-r--r-- 1 root root 0 Oct 10 10:11 c.txt
drwxr-xr-x 2 root root 6 Oct 10 10:11 newfolder
[root@master home]# rm -rf *                        ### 强制删除当前目录下所有文件和文件夹(谨慎使用,切记切记)
[root@master home]# ls -l
total 0
[root@master home]#

在这里插入图片描述

五、Linux文件操作

1、验证touch命令

touch命令的功能是用于创建空文件与修改时间戳。如果文件不存在,则会创建出一个空内容的文本文件;如果文件已经存在,则会对文件的访问时间和修改时间进行修改操作,管理员可以完成此项工作,而普通用户只能管理主机的文件。

参数说明
-a改变档案的读取时间记录
-m改变档案的修改时间记录
-r使用参考档的时间记录,与 --file 的效果一样
-c不创建新文件
-d设定时间与日期,可以使用各种不同的格式
-t设定档案的时间记录,格式与 date 命令相同

启动实验,连接OpenVPN后,登录master服务器,验证Linux的touch命令。

[root@master ~]# ls -l
total 4
-rw------- 1 root root 3068 Nov  2  2016 anaconda-ks.cfg
-rw-r--r-- 1 root root    0 Sep 27 17:04 rename.csv
-rw-r--r-- 1 root root    0 Sep 27 17:04 weather.csv
[root@master ~]# touch yunchuang.txt   ###创建一个名为“yunchuang”的新的空白txt文件
[root@master ~]# ls -l
total 4
-rw------- 1 root root 3068 Nov  2  2016 anaconda-ks.cfg
-rw-r--r-- 1 root root    0 Sep 27 17:04 rename.csv
-rw-r--r-- 1 root root    0 Sep 27 17:04 weather.csv
-rw-r--r-- 1 root root    0 Sep 28 09:25 yunchuang.txt
[root@master ~]# touch yunchuang.txt      ###修改yunchuang.txt文件的时间属性
[root@master ~]# ls -l
total 4
-rw------- 1 root root 3068 Nov  2  2016 anaconda-ks.cfg
-rw-r--r-- 1 root root    0 Sep 27 17:04 rename.csv
-rw-r--r-- 1 root root    0 Sep 27 17:04 weather.csv
-rw-r--r-- 1 root root    0 Sep 28 09:28 yunchuang.txt

在这里插入图片描述

2、验证cat命令

cat意思为concatenate,用于查看文件内容,cat命令适用于查看内容较少的、纯文本的文件。

参数说明
-n显示行数(空行也编号)
-s显示行数(多个空行算一个编号)
-b显示行数(空行不编号)
-E每行结束处显示$符号
-T将TAB字符显示为 ^I符号
–help显示帮助信息
–version显示版本信息

在master服务器上键入如下命令,输出文件anaconda-ks.cfg的内容。

[root@master ~]# cat  anaconda-ks.cfg

在这里插入图片描述

3、验证more命令

more命令用于分页显示文本文件内容,如果文本文件中的内容较多较长,使用cat命令读取后则很难看清,这时使用more命令进行分页查看就更加合适了,可以把文本内容一页一页的显示在终端界面上,用户每按一次回车即向下一行,每按一次空格即向下一页,直至看完为止。

参数说明
-num指定每屏显示的行数
-f计算实际的行数,而非自动换行的行数
-p先清除屏幕再显示文本文件的剩余内容
-c与-p相似,不滚屏,先显示内容再清除旧内容
-s多个空行压缩成一行显示
-u禁止下划线

验证cat命令时,由于anaconda-ks.cfg文件内容过多,屏幕自动刷到了文件底端,导致前面的文件无法正常展示,因此,键入如下命令来验证more和cat的区别。

[root@master ~]# more  anaconda-ks.cfg

在这里插入图片描述

六、实验心得

  1. 命令记忆:通过实际操作,我深刻体会到记忆Linux命令的重要性。虽然一开始需要频繁查看命令手册,但多次使用后,很多常用命令已经能够熟练掌握。
  2. 命令组合:Linux命令的强大之处在于可以组合使用。例如,使用find命令找到文件后,可以使用xargs命令与其他命令结合,实现更复杂的操作。
  3. 文件权限:在操作过程中,我注意到Linux对文件权限的严格控制。通过ls -l命令可以查看文件的权限信息,这对于系统安全和文件保护至关重要。
  4. 错误处理:在实验中,我遇到了不少错误,如命令拼写错误、权限不足等。通过查阅文档和求助社区,我学会了如何正确处理和解决这些错误。
  5. 实践出真知:理论学习固然重要,但实际操作更能加深理解。通过本次实验,我对Linux的基本命令和文件操作有了更深入的认识,也提高了自己的动手能力。

总结
  本次Linux基础实验让我对常用基本命令和文件操作有了更深入的了解。通过实际操作,我不仅掌握了这些命令的使用方法,还学会了如何组合使用命令来处理更复杂的任务。未来,我将继续深入学习Linux系统,提高自己的技术水平。

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

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【Flutter】合并多个流Stream

1.说明 无意间发现了一个好用的库rxdart,它为 Dart 的 Stream 添加了额外的功能。 2.功能 (1)合并多个流Stream 借助Rx.combineLatest2()合并两个流stream1和stream2。 注意:如果dart文件中同时使用了getx,需要隐…

腾讯云视立方Electron 相关问题

安装相关 trtc-electron-sdk 是否兼容官方 Electron v12.0.1 版本? 兼容的,trtc-electron-sdk 没有特别依赖 elecron 自身的 SDK,所以没有相关的版本依赖。 Electron 下载慢甚至卡住不动? 当开始下载tmp-3320-1-SHASUMS256.txt-6.1.9文件…

【c语言——指针详解(4)】

文章目录 一、回调函数是什么?二、qsort的使⽤1、使⽤qsort函数排序整型数据2、使⽤qsort排序结构数据 三、qsort函数的模拟实现 作者主页 一、回调函数是什么? 回调函数就是⼀个通过函数指针调⽤的函数。 如果你把函数的指针(地址&#xf…

【进阶OpenCV】 (12)--人脸检测识别

文章目录 人脸识别一、获取分类器二、代码实现1. 图片预处理2. 加载人脸检测分类器3. 检测人脸4. 标注人脸 总结 人脸识别 要实现人脸识别首先要判断当前图像中是否出现了人脸,这就是人脸检测。只有检测到图像中出现了人脸,才能据此判断这个人到底是谁。…

模拟电子电路基础(常见半导体+multisim学习1)

目录 1.半导体的基础 1.1.半导体基础知识 1.1.1本征半导体 1.1.2杂质半导体 1.1.3PN结 1.2半导体二极管 1.2.1半导体二极管的几种常见结构 1.2.2二极管的伏安特性曲线 1.2.3二极管的主要参数 1.2.4二级管的等效电路 1.2.5稳压二极管 1.2.其他类型二极管 2.multisim的…

计算机网络:数据链路层 —— PPP 点对点协议

文章目录 PPP 帧PPP帧的格式PPP帧的透明传输面向字节的异步链路面向比特的同步链路 PPP帧的差错检测 PPP 的工作状态 点对点协议(Point-to-Point Protocol,PPP)是目前使用最广泛的点对点数据链路层协议,用于在两个节点之间进行数据…

线性代数 行列式

一、行列式 1、定义 一个数学概念,主要用于 线性代数中,它是一个可以从方阵(即行数和列数相等的矩阵)形成的一个标量(即一个单一的数值) 2、二阶行列式 ,像这样将一个式子收缩称为一个 2*2 的…

西门子828d的plc一些信息记录

1、虽然是200的plc但是引入了DB的形式替代原来的V存储区。 2、用户自定义DB块范围,DB9000-DB9063,共64个DB块。 可用地址范围如上图 机床MCP483面板地址表,其它类型的面板地址自己在828d简明调试手册里查看。 如何上载828d的plc程序: 1.通…

Chainlit集成Dashscope实现语音交互网页对话AI应用

前言 本篇文章讲解和实战,如何使用Chainlit集成Dashscope实现语音交互网页对话AI应用。实现方案是对接阿里云提供的语音识别SenseVoice大模型接口和语音合成CosyVoice大模型接口使用。针对SenseVoice大模型和CosyVoice大模型,阿里巴巴在github提供的有开…

数据结构之红黑树实现(全)

一、红黑树 红黑树是一种自平衡的二叉搜索树,它通过约束节点的颜色和结构来保持平衡。红黑树是由 Rudolf Bayer 在1972年发明的,被认为是一种优秀的平衡树结构,广泛应用于各种数据结构和算法中。 1.红黑树的性质 1. 每个结点是红的或者黑的…

Mac 备忘录妙用

之前使用 Windows 的过程中,最痛苦的事是没有一款可以满足我快速进行记录的应用 基本都得先打开该笔记软件,然后创建新笔记,最后才能输入,这么多步骤太麻烦了 在切换到 MacOS 之后,让我惊喜的就是自带的备忘录&#…

android——自定义控件(不停变化的textview、开关switch、动画效果的打勾)

一、从开始数字到结束数字,不断变化 import android.animation.TypeEvaluator; import android.animation.ValueAnimator; import android.content.Context; import android.util.AttributeSet; import android.view.animation.AccelerateDecelerateInterpolator;i…

设计模式-原型模式(克隆、Clone、Prototype)

原型模式(克隆、Clone、Prototype)是一种创建型设计模式, 使你能够复制已有对象, 而又无需使代码依赖它们所属的类。 问题 譬如美国研制了一种特效药,而且还在专利保护器内,而印度制药公司看中了&#xff0…

2024 第一次周赛

A: 题目大意 骑士每连续 i 天每天会得到 i 个金币,(i 1, 2, 3 , …),那么展开看每一天可以得到的金币数:1 2 2 3 3 3 4 4 4 5 5 5 5 5 … 可以发现就是1个1 ,2个2, 3个3…,那么我…

Flutter 3.24 发布:GPU模块及多视图嵌入功能

Flutter 3.24 发布:GPU模块及多视图嵌入功能 Flutter 3.24 带来了许多新功能和改进,让开发应用程序变得更加容易和有趣。这个版本重点展示了 Flutter GPU 的预览功能,让应用程序可以直接使用高级图形和 3D 场景功能。 此外,网页…

win软件 超强的本地视频 图片去水印 动态水印!

AI视频图片去水印 HitPaw Watermark Remover 电脑软件,内涵安装教程,以后看到有水印的视频不怕啦,用这个就行了,可以去除动态水印! 【下载】 https://pan.quark.cn/s/1ba6f088f0b2 【应用名称】:HitPaw Watermark R…

ARIMA 模型初体验 —— 预测股票数据

第 1 步,从 twelvedata 上获取苹果 11 号 15:30 到 16:00 的 OHLC、成交量 数据。 第 2 步,编写 Python 代码(实际上可以用 R 语言,R 语言从语言的级别对分析预测提供了支持,而 Python 需要第三方库)。 …

C++ day04(友元 friend、运算符重载、String字符串)

目录 【1】友元 friend 1》概念 2》友元函数 3》友元类 4》友元成员函数 【2】运算符重载 1》概念 2》友元函数运算符重载 ​编辑 3》成员函数运算符重载 4》赋值运算符与类型转换运算符重载 5》注意事项 【3】String 字符串类 【1】友元 friend 1》概念 定义&#x…

BUUCTF-greatescape1

发现有ftp包和tcp包居多 下载解压是个流量包,使用wiresharh打开,CTRLF,按下图搜索ftp tcp18流发现ssc.key 传送,在19流发现key内容 复制保存为ssc.key, 加载key解密tls,再追踪tls流可得flag INS{OkThatWasWay2Easy} …

多元线性回归:机器学习中的经典模型探讨

引言 多元线性回归是统计学和机器学习中广泛应用的一种回归分析方法。它通过分析多个自变量与因变量之间的关系,帮助我们理解和预测数据的行为。本文将深入探讨多元线性回归的理论背景、数学原理、模型构建、技术细节及其实际应用。 一、多元线性回归的背景与发展…