【Linux从入门到精通】Linux常用基础指令(中)

news2025/1/21 15:46:13

 

  本篇文章接上篇文章(【Linux从入门到精通】Linux常用基础指令(上))进行详解。本章的指令相对较为重要,使用频率较高,难度相对上篇文章较难,也较为复杂。希望能对你的理解有所帮助。 

文章目录

一、mv 指令

1、1 剪切和重命名普通文件 

1、2 剪切和重命名目录 

二、cp 指令

2、1复制 普通文件 

2、2 复制 目录 

三、more 和 less 指令

3、1 more 指令

3、1、1 more 直接查看 

3、1、2 -n 选项

3、2 less 指令

四、head 和 tail 指令

4、1 head 指令

4、2 tail 指令

4、3 head 与 tail 综合训练


🙋‍♂️ 作者:@Ggggggtm 🙋‍♂️

👀 专栏:Linux从入门到精通 👀

💥 标题:Linux常用基础指令💥

 ❣️ 寄语:与其忙着诉苦,不如低头赶路,奋路前行,终将遇到一番好风景 ❣️

一、mv 指令

  mv 命令是 move 的缩写,可以用来移动文件或者将文件改名( move (rename) fifiles ),是 Linux 系统下常用的命令,经常用来备份文件或者目录。
语法 : mv [ 选项 源文件或目录 目标文件或目录。
功能 :
  • mv命令中第二个参数类型的不同(是目标文件还是目标目录),mv命令将文件重命名或将其移至一个新的目录中。
  • 当第二个参数类型是文件时,mv命令完成文件重命名,此时,源文件只能有一个(也可以是源目录名),它将所给的源文件或目录重命名为给定的目标文件名。
  • 当第二个参数是已存在的目录名称时,源文件或目录参数可以有多个,mv命令将各参数指定的源文件均移至目标目录中。
常用选项
  • -f :force 强制的意思,如果目标文件已经存在,不会询问而直接覆盖;
  • -i :若目标文件 (destination) 已经存在时,就会询问是否覆盖。

1、1 剪切和重命名普通文件 

  通过对上面内容的了解,这里给大家总结一下:mv 指令有重命名和剪切两个功能

  当第二个参数类型是文件,我们可视为重命名。具体实例如下:

  第二个参数是已存在的目录名称时,我们将文件移至其他目录下,我们可视为剪切。具体实例如下:

  我们也可以在剪切的同时,对该文件进行重命名 。具体实例如下:

1、2 剪切和重命名目录 

  当然,目录也是可以剪切的。具体我们可看如下实例:   但是,我们需要注意的一点是,普通文件能在剪切的同时对其进行重命名,目录也是可以的。但目录是有所区别的。当我们第二个参数跟上已存在的目录时,是将此目录剪切到已存在的目录下。具体如下:

   当我们第二个参数跟不存在的目录时,我们是将此目录剪切并且重命名为不存在的目录。具体示例如下:

二、cp 指令

  我们先来了解一下cp指令的使用方法和细节。
  语法 cp [ 选项 ] 源文件或目录 目标文件或目录。
  功能 : 复制文件或目录。
  说明 : cp 指令用于复制文件或目录,如同时指定两个以上的文件或目录,且最后的目的地是一个已经存在的目录,则它会把前面指定的所有文件或目录复制到此目录中。若同时指定多个文件或目录,而最后的目的地并非一个已存在的目录,则会出现错误信息。
  常用选项
  • -f 或 --force 强行复制文件或目录, 不论目的文件或目录是否已经存在;
  • -i 或 --interactive 覆盖文件之前先询问用户;
  • -r递归处理,将指定目录下的文件与子目录一并处理。若源文件或目录的形态,不属于目录或符号链 接,则一律视为普通文件处理;
  • -R 或 --recursive递归处理,将指定目录下的文件及子目录一并处理。

2、1复制 普通文件 

  复制一个普通的文件给还是比较简单的。我们看如下实例:

2、2 复制 目录 

  当时我们要复制目录时,我们必须加上 -r 选项。也就是递归处理。

  注意,复制文件和目录时,内容也会被完全复制的。有同学说这与剪切 mv 指令很像。确实很像,但是又有所区别。剪切相当于把原文件移至另一目录,但是复制就是拷贝了一份,原目录下的原文件仍然存在。

三、more 和 less 指令

3、1 more 指令

  我们在学上篇文章时,了解到了 cat 指令是去查看一个文件的内容。细心的同学就会发现,cat 指令查看大文件时,就很不方便cat 指令只适合查看小文件。我们现在有一个文件,内容有1000行。我们只想查看第500行,用cat 指令似乎不太方便。这是我们引入more 指令的学习。我们先了解一下 more 指令。

语法 more [ 选项 ][ 文件 ]。
功能 more 命令,功能类似 cat。
常用选项
  • -n 对输出的所有行编号;
  • q 退出more。

  具体我们结合下面是里一起理解一下。

3、1、1 more 直接查看 

  当我们直接 more + 文件名 查看内容时,我们可通过回车键进行下移查看,此时的上下键是不能够操作的。默认是输出的行数为整个屏幕。具体图下:

3、1、2 -n 选项

  我们也可加上 -n 选项进行指定行查看,指令: more -n 文件名。具体实例如下:

  

  当我们输入完指令时,直接打印慢屏幕到第500行,具体如上图。当然,我们也可输入 ‘/+n’ 跳转到指定的第n行,但是系统会直接加载了(打印出)文件第n行后的所有内容。具体如下图:

  

  当我们想退出more命令时,按下 q键 即可。

3、2 less 指令

   我们发现 more 指令也并没有那么好用。这里还有一个 less 指令。我们先了解一下less指令。

语法: less [ 参数 ] 文件。
功能 : less与 more 类似,但使用 less 可以随意浏览文件,而 more 仅能向前移动,却不能向后移动,而且 less 在查看之前 不会加载整个文件。
选项
  • -i  忽略搜索时的大小写;
  • -N  显示每行的行号;
  • /字符串:向下搜索“字符串”的功能;
  • ?字符串:向上搜索“字符串”的功能;
  • n:重复前一个搜索(与 / 或 ? 有关);
  • N:反向重复前一个搜索(与 / 或 ? 有关);
  • q:quit。

  less指令与more指令相似。但功能强于more指令。强在哪里呢?

  • less 工具也是对文件或其它输出进行分页显示的工具,应该说是linux正统查看文件内容的工具,功能极其强大。
  • less 的用法比起 more 更加的有弹性。在 more 的时候,我们并没有办法向前面翻, 只能往后面看;
  • 但若使用了 less 时,就可以使用 [pageup][pagedown] 等按键的功能来往前往后翻看文件,更容易用 来查看一个文件的内容!
  • 除此之外,在 less 里头可以拥有更多的搜索功能不止可以向下搜,也可以向上搜

   我们结合如下实例理解。 

  less的直接查看可使用上下键进行翻阅。 我们也可输入 ‘/+n’ 跳转到指定的第n行,直接打印满屏目。less 想查看第 n 行的话,就可以输入 ‘/+n’ 跳转到指定的第n行。

四、head 和 tail 指令

4、1 head 指令

  我们只想查看文件开头的内容,我们就可以使用 head 命令。

  head   tail  就像它的名字一样的浅显易懂,它是用来显示开头或结尾某个数量的文字区块, head  用来显示档案的开头至标准输出中,而 tail  想当然就是看档案的结尾。
  语法: head [ 参数 ]... [ 文件 ]... 
  功能 : head 用来显示档案的开头至标准输出中,默认 head 命令打印其相应文件的开头 10 行。 
  选项 : -n<行数> 显示的行数。
  我们可结合下面实例理解。

  head 指令默认打出前10行内容,如下:

  我们也可通过加上 -n 选项,进行选择打印出的行数。如下:

4、2 tail 指令

  tail 命令从指定点开始将文件写到标准输出。使用tail命令的-f选项可以方便的查阅正在改变的日志文件,tail - f fifilename会把fifilename里最尾部的内容显示在屏幕上,并且不但刷新,使你看到最新的文件内容.

语法: tail[ 必要参数 ][ 选择参数 ][ 文件
功能: 用于显示指定文件末尾内容,不指定文件时,作为输入信息进行处理。常用查看日志文件。
选项:
  • -f 循环读取。
  • -n<行数> 显示行数。

  tail指令也很简单。我们看如下实例。

  tail 指令默认打出后10行内容,如下:

  当然,也可通过加上-n选项进行选择打印多少行。如下:

4、3 head 与 tail 综合训练

  上述我们都是查看开头和结尾。那我们想要是查看其中的一段呢?例如查看其中的666-688行呢?当然,我们第一时间会想到利用head和tail综合来解决。

  head 将文件前688行输出到一个新的文件中,再去用tail查看新的文件的后29行。具体实例如下:

  但是这种方法还需要另外开一个文件来存储数据,是有所消耗的。有没有更好的方法呢?这里我们引出一个新的概念:管道文件。

  我们先看下图:

  上面的符号 ‘ | ’就是管道,充当着我们第一种方法所建的tmp.txt文件。 

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

(Open AI 极简教程)ChatGPT注册登录常见问题及其解决方法最全总结

好久没有更新过技术类的文章了&#xff0c;临近五一假期&#xff0c;首先祝大家假期游玩愉快&#xff0c;也希望本篇文章能够对你有所帮助&#xff0c;今天这篇博客将会把ChatGPT注册中可能遇到的问题彻头彻尾的讲一下&#xff0c;如果感觉有帮助的话就动动你发财的小手点个收藏…

蓝奥声核心技术分享——一种无线低功耗配置技术

1.技术背景 无线低功耗配置技术指基于对目标场景状态变化的协同感知而获得触发响应并进行智能决策&#xff0c;属于蓝奥声核心技术--边缘协同感知(EICS&#xff09;技术的关键支撑性技术之一。该项技术涉及物联网边缘域的无线通信技术领域&#xff0c;具体主要涉及网络服务节点…

3.龙芯2k1000 builroot文件系统编译过程

3.龙芯2k1000 builroot文件系统编译过程 文章目录 3.龙芯2k1000 builroot文件系统编译过程&#xff08;一&#xff09;、在Ubuntu环境下载并配置交叉编译链&#xff08;与内核编译工具链相同&#xff09;&#xff08;二&#xff09;、下载buildroot源码&#xff08;三&#xff…

【Linux命令篇】正则表达式浅析

前言 转义字符是将普通字符转化为特殊字符的一种方式。 在正则表达式中&#xff0c;一些字符被定义为特殊字符&#xff08;也称为元字符&#xff09;&#xff0c;它们具有特殊的含义。这些特殊字符包括&#xff1a; 句点字符 .&#xff1a;可以匹配除了换行符以外的任何单个…

JavaScript经典教程(四)-- JavaScript基础 - BOM、打印、window对象等详解

184&#xff1a;JavaScript基础 - BOM、打印、window对象等详解 185&#xff1a;JavaScript基础 - 数据类型Number及运算符号 1、关键字 &#xff08;3&#xff09;alert - 警告窗 原型&#xff1a;window.alert(); alert实际上是一个函数 注&#xff1a;alert无法弹出部分…

Figma如何导出jpg格式?

在这个追求效率和质量的时代&#xff0c;Figma确实可以加快我们的设计工作&#xff0c;增加效率&#xff0c;功能越来越强大。然而&#xff0c;Figma从未有过中文版本。 但就使用工具而言&#xff0c;一次生两次并不难。设计小白经常卡在最后一步&#xff0c;如何用Figma导出j…

【Paper】2022_基于自适应事件触发控制的一般线性多智能体系统的一致性_田昌源

田昌源. 基于自适应事件触发控制的一般线性多智能体系统的一致性[D].青岛大学,2022.DOI:10.27262/d.cnki.gqdau.2022.002546. 文章目录 第五章 一般线性多智能体系统的自适应事件触发二分一致性5.1 系统模型5.2 自适应事件触发二分一致性5.2.1 无领导一致性5.2.2 领导-跟随一致…

JDK的环境配置(超级详细教程)

JDK的环境配置——超详细教程 一、下载java安装包 我们可以去官网下载java&#xff0c;进入官网页面&#xff0c;然后点击Download Java。 网站&#xff1a;https://developer.oracle.com/languages/java.html 里面有各种版本的jdk可供选择。 二、安装JDK 这里我选择安装…

Android实现一个带清除和提交按钮的清爽圆角搜索框

运行效果&#xff1a; 放入Toolbar的效果 清除按钮有内容才显示&#xff1a; 下面是教程&#xff1a; 实现一个圆角搜索框&#xff0c;可以使用CardView来实现&#xff0c;同时可以添加一个EditText和两个ImageView作为清除和提交按钮。 activity_main <?xml version&quo…

Anaconda3 安装 Tensorflow-gpu

一.准备需要 GPU版本&#xff0c;需要提前下载 cuda 和 cuDNN。&#xff08;可以查看此教程 Anaconda3 安装 Tensorflow-gpu &#xff09; GPU 一般是 nvidia 的 安装前 一定 要查看自己电脑的环境配置&#xff0c;然后查询Tensorflow-gpu、Python、 cuda 、 cuDNN 版本关系&…

嵌入式设备显示屏相关概念汇总

嵌入式设备常用的显示屏接口 LCD 接口&#xff1a;是一种常见的数字电路接口&#xff0c;支持多种显示器件&#xff0c;如字符型液晶显示器和点阵型液晶显示器等。 VGA 接口&#xff1a;是一种视频接口标准&#xff0c;用于连接显示器和计算机。该接口提供模拟 RGB 信号&#…

以太网卡TSO、GSO、LRO、GRO描述及相关配置

以太网卡TSO、GSO、LRO、GRO描述及相关配置 以太网卡的 TSO、GSO、LRO、GRO 是一些传输协议中用于提高网络性能的技术。 硬件包拆分与合并 TSO&#xff08;TCP Segmentation Offload &#xff09; TSO 是一种由网卡卸载 TCP 数据包分段的技术。在传统的方式中&#xff0c;当…

案例01-tlias智能学习辅助系统04-登录认证+全局异常处理

目录 1、基础登录 2、登录校验 2.1、会话跟踪技术&#xff1a; Cookie、Session JWT令牌 2.2、请求过滤 方式一、过滤器&#xff08;Filter&#xff09; 方法二&#xff1a;拦截器&#xff08;interceptor&#xff09; Filter与Interceptor的区别 3、全局异常处理器 1、…

fork函数如何创建进程,exit/_exit函数如何使进程终止的详细分析与代码实现

&#x1f38a;【进程通信与并发】专题正在持续更新中&#xff0c;进程&#xff0c;线程&#xff0c;IPC&#xff0c;线程池等的创建原理与运用✨&#xff0c;欢迎大家前往订阅本专题&#xff0c;获取更多详细信息哦&#x1f38f;&#x1f38f;&#x1f38f; &#x1fa94;本系列…

【Pytorch基础教程38】torchserve模型部署和推理

note torch-model-archiver打包模型&#xff1b;利用torchserve加载前面打包的模型&#xff0c;并以grpc和http等接口往外提供推理服务启动模型的api服务、curl命令发送http post请求&#xff0c;请求模型服务API&#xff1b;流程和TensorFlow serving流程大同小异 文章目录 n…

人工智能之配置环境教程二:在Anaconda中创建虚拟环境并在VsCode中使用

人工智能之配置环境教程二&#xff1a;在Anaconda中创建虚拟环境安装pytorch并在VsCode中使用虚拟环境 作者介绍一. 在Anaconda中创建虚拟环境1. 进入本地终端1.1 键盘使用**winR**快捷键1.2 输入**cmd**点击**确定**进入windows命令行终端 2. 安装镜像源2.1 添加镜像源 3. 创建…

PowerShell install 一键部署http+用户名密码登录实现文件系统

Apache 前言 Apache(音译为阿帕奇)是世界使用排名第一的Web服务器软件。它可以运行在几乎所有广泛使用的计算机平台上&#xff0c;由于其跨平台和安全性被广泛使用&#xff0c;是最流行的Web服务器端软件之一。它快速、可靠并且可通过简单的API扩充&#xff0c;将Perl/Python等…

BUUCTF [第五空间2019 决赛]PWN5

小白垃圾做题笔记而已&#xff0c;不建议阅读。 简书上的大佬有三种解题思路&#xff0c;而我刚开始一种也不会&#xff0c;看了题解后才勉强有了两种。 1.第一种算绕过if吧。 更改dword_804C044中的内容&#xff0c;第二次输出相同的内容&#xff0c;从而绕过if 脚本如下&…

Linux-安装gcc和g++报错降级的解决方法

一、简介 通过sudo apt-get install gcc指令安装g报错。 下列软件包有未满足的依赖关系&#xff1a;gcc : 依赖: gcc-7 (> 7.3.0-12~) 但是它将不会被安装推荐: libc6-dev 但是它将不会被安装 或libc-dev又按照网上的解决办法 &#xff0c;还是报错。 apt-get update apt-g…