【大数据技术基础 | 实验二】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系统,提高自己的技术水平。

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

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

相关文章

元器件行业常用软件推荐-加速度JSUDO

元器件行业中,工程师们会使用多种软件来辅助设计、仿真、布局、布线和验证等工作。以下是一些推荐的软件,它们在电子设计自动化(EDA)和集成电路(IC)设计领域中被广泛使用: Altium Designer&…

创建包含可导入浏览器信任的SSL自签名证书

问题:现在的三大浏览器,chrome、edge、firefox 一般都默认启用https检查,这就要求我们自建的局域网内的网址和其他诸如nextcloud、photoprism、tiddlywiki等应用也必须要有证书。解决方法是使用openssl自己生成一个。由此则会再衍生出一个问题…

计算机视觉之YOLO算法基本原理和应用场景

YOLO算法基本原理 整体流程 YOLO 将目标检测问题转化为一个回归问题。它将输入图像划分成多个网格单元,每个网格单元负责预测中心点落在该网格内的目标。对于每个网格单元,YOLO 预测多个边界框以及这些边界框中包含目标的类别概率。边界框通常由中心点坐…

(vue)a-upload上传文件后将结果展示图片

&#xff08;vue&#xff09;a-upload上传文件后将结果展示图片 亲测有效 项目背景&#xff1a;油气项目上传数字岩心图片 接口返回 控制台打印的info: 代码 <a-uploadname"file"list-type"picture-card"class"avatar-uploader":show-u…

LabVIEW如何实现高精度定时器

在LabVIEW中实现高精度定时器通常需要考虑以下几个方面&#xff1a;定时器的精度要求、操作系统的调度机制、硬件资源&#xff08;如计时器、触发器&#xff09;等。以下是几种常见的实现方式&#xff1a; ​ 1. 使用 Wait(ms) 或 Wait Until Next ms Multiple VI 这两个函数…

Docker-compose 单节点管理、consul 注册中心、registrator、template

consul是一个基于分布式的服务发现和配置管理工具。它具有快速构建分布式架构&#xff0c;提供服务发现和服务注册功能。consul职能&#xff1a;1、自动发现、注册&#xff1b;2、自动配置&#xff1b;3、自动更新 服务发现&#xff1a;自动检查网络中的服务&#xff08;如数据…

101、QT摄像头录制视频问题

视频和音频录制类QMediaRecorder QMediaRecorder 通过摄像头和音频输入设备进行录像。 注意: 使用Qt多媒体模块的摄像头相关类无法在Windows平台上进行视频录制&#xff0c;只能进行静态图片抓取但是在Linux平台上可以实现静态图片抓取和视频录制。 Qt多媒体模块的功能实现是依…

李沐团队发布Higgs-Llama-3-70B,角色扮演专用模型

前言 近年来&#xff0c;大语言模型&#xff08;LLM&#xff09;在各个领域都展现出强大的能力&#xff0c;尤其是其在对话、写作、代码生成等方面的应用越来越广泛。然而&#xff0c;想要让 LLM 真正地融入人类社会&#xff0c;扮演各种角色&#xff0c;还需要具备更强大的角…

Qt媒体播放器实现

本文介绍Qt媒体播放器实现。 Qt应用程序有时会涉及到视频文件的播放&#xff0c;Qt提供了QVideoWidget类实现视频和音频的播放&#xff0c;本文基于QVideoWidget类实现一个简单的媒体播放器。 1.自定义类&#xff08;基于QVideoWidget类&#xff09; 由于Qt并未提供专门的控…

免费绘图软件全解析:让你的创意工作更加高效

在数字化时代&#xff0c;绘图软件已成为我们生活中不可或缺的一部分&#xff0c;无论是业余爱好者还是专业设计师。幸运的是&#xff0c;市面上有许多免费且功能强大的绘图软件可供选择。以下是我们为您精选的8款免费绘图软件&#xff0c;每一款都是精心挑选的&#xff0c;值得…

idea2024启动Java项目报Error running CloudPlApplication. Command line is too long.

idea2024启动Java项目报Error running CloudPlApplication. Command line is too long. 解决方案&#xff1a; 1、打开Edit Configurations 2、点击Modify options设置&#xff0c;勾选Shorten command line 3、在Edit Configurations界面下方新增的Shorten command line选项中…

Midjourney零基础学习

Midjourney学习笔记TOP08 Midjourney的各种参数设置 Midjourney的用户操作界面没有醒目的工具栏、属性栏&#xff0c;所有的操作都是通过调用各种指令和参数进行的。 【质量&#xff08;–quality&#xff09;】 质量&#xff1a;顾名思义就是生成图像的画面细节和品质。 Mid…

Android10 recent键相关总结

目录 初始化流程 点击Recent键流程 RecentsActivity 显示流程 RecentsModel 获取数据管理类 RecentsActivity 布局 已处于Recent界面时 点击recent 空白区域 点击返回键 recent组件配置 Android10 Recent 功能由 System UI&#xff0c;Launcher共同实现。 初始化流程 …

数据结构之顺序表——动态顺序表(C语言版)

静态顺序表我们已经实现完毕了&#xff0c;下来我们实现一下动态顺序表 静态链接&#xff1a;数据结构之顺序表——动态顺序表(C语言版) 首先来了解一下两个顺序表的差别 一、内存管理的灵活性 动态分配与释放&#xff1a;动态顺序表能够在运行时根据需要动态地分配和释放内存…

Prometheus+Grafana 监控 Kubernetes

文章目录 一、Prometheus介绍二、Prometheus组件与监控三、Prometheus基本使用&#xff1a;怎么来监控四、Kubernetes监控指标五、Prometheus的基本使用&#xff1a;部署1.基于docker部署prometheusgrafana2. 查看prometheus配置文件3. 监控Linux服务器3.1找到自己相应的系统去…

C# 中循环的应用说明

一循环的概念说明 在C#编程中&#xff0c;循环结构是一种非常重要的控制流语句&#xff0c;它允许我们重复执行一段代码&#xff0c;直到满足某个特定条件为止。C#提供了几种不同类型的循环结构&#xff0c;包括for循环、while循环、do-while循环和foreach循环。 循环语句允许…

【华为HCIP实战课程十一】OSPF网络NBMA网络解决方案,网络工程师

上节我们讲解了DR DBR 选举,每台设备可以学到全网路由,但是通信是有问题的 DR BDR的选举是基于接口的,而不是基于路由器的 一、OSPF路由通信问题 R5虽然可以学到全网的OSPF路由,但是R5无法ping通44.1.1.1 原因是R5到达R4 lo0的下一跳是10.1.1.4, 而R5和R4直连无法ping通…

40款主流的AI工具集盘点,这些好用的AI软件一定要知道!

AI工具哪款好&#xff0c;有哪些值得推荐&#xff1f; 不可否认&#xff0c;当下各式各样的AI工具层出不穷&#xff0c;面对不断涌现的AI工具&#xff0c;各位在选用时是否无从下手&#xff0c;或是抽不出时间&#xff0c;逐一体验对比不同AI工具的差异…… 这也是现如今许多…

根据PFX证书文件合成Nginx所需的SSL证书

具体步骤如下&#xff1a; 1、安装openssl 工具地址&#xff1a;http://slproweb.com/products/Win32OpenSSL.html 并配置环境变量。 2、生成证书 &#xff08;1&#xff09;以管理员身份运行cmd&#xff0c;进入到pfx文件的目录&#xff1a; &#xff08;2&#xff09;根据…

一款零依赖、跨平台的流媒体协议处理工具,支持 RTSP、WebRTC、RTMP 等视频流协议的处理

大家好&#xff0c;今天给大家分享一款功能强大的流媒体协议处理工具go2rtc&#xff0c;支持多种协议和操作系统&#xff0c;具有零依赖、零配置、低延迟等特点。 项目介绍 go2rtc可以从各种来源获取流&#xff0c;包括 RTSP、WebRTC、HomeKit、FFmpeg、RTMP 等&#xff0c;并…