Linux初识——基本指令(2)

本文将继续从上篇末尾讲起,讲解我们剩下的基本指令

一、剩余的基本指令

1、mv

mv指令是move(移动)的缩写,其功能为:1.剪切文件、目录。2.重命名

先演示下重命名,假设我想把当前目录下的di34改成dir5

那如何实现剪切操作呢?

我们发现,dir2已经被剪切到上一级目录了。

因此,mv的语法通式为:mv [文件或目录] [文件或目录]。当后一个是文件的时候,代表着是重命名,当后一个是路径的时候,代表着剪切。

但如果是mv [文件或目录] 目录+文件名,代表着我不仅要把它剪切到目标位置,还要重命名。

2. cat指令(用来显示文件的内容)

在学这个指令之前,我们先简单介绍一下nano ,他的用处就是在我们创建的文件中编辑内容,比如nano xx.txt即可在里面写东西了。

当我们写好以后,按下ctrl+x即可退出文件。

在保存后,我们想看一看里面写的到底是什么,只需要cat 文件名即可。

除此之外,我们也可以加选项-n,即可打印出行数

不仅如此,如果内容之间穿插着换行也可以有效地显示出来,但如果我们只想把有效内容输出出来,可以使用-b选项(只对非空行编号),此外,还有-s选项(不输出多行空行,即两行有效内容间最多输出一行空行)且可以组合使用。

还有一个与它很像的命令tac,也就是把cat倒过来,它的作用就是把内容逆序输出。

3.more和less指令

cat指令用于显示文件中的内容,但有时候我们面对一个大文件时想展开,用cat往往会造成刷屏的现象,此时more和less就派上用场了,他们和cat语法一样,只不过more和less显示的是开头的内容,cat会直接显示内容的末尾,看不到开头,且less支持用键盘上下键来查看上下文内容,也可以通过/关键字来跳转位置。而more只能通过enter键下翻内容,实际中我们基本都用less不用more。

在此我们对文件的读写内容补充一个知识点:重定向

对于cat指令,我们如果直接输入cat后面什么也不跟的情况下,我们在键盘上输入什么它就会打印出什么内容在显示器上。在Linux中呢,一切皆文件,包括我们的键盘、显示器等,我们所输入的内容并在显示器上呈现,其实就是对显示器这个文件进行写入操作。在C语言中,我们用scanf或者cin写入,即在键盘上获取数据,在Linux中,我们用echo指令,比如echo “hello,world”此时屏幕上就会输出 “hello,world”。

但是我们看第二个echo结果并没有在显示器文件进行写入了,而是在test.txt这个文件里写入,也就是说这个文件里现在有了内容“hello world”。如果此路径没有我们的文件名它就会新建一个该名的文件并在里面写入。貌似我们发现了新的新建文件的方式,以前我们都是touch 文件名。现在只需>文件名即可。">"我们叫输出重定向。

下一个,如果我们继续像该文件里写入内容,按道理,用上面的方法即可

本意我们是想在hello world后面加上aaaaa,但我们发现输入以后之前的内容消失了。所以我们得出,每一次的输出重定向,都是一次全新的写入。并将之前的内容清空。有了这个原理,我们就可以把已存在内容的文件进行内容清空,只需要>文件名即可,就像创建新的文件一样。

那我们想追加写入内容怎么办呢?用>>即可(中间不能用空格)>>叫追加重定向

又有一个新的问题,我们明明没打换行,但每次都有换行符,其实是echo导致的,echo的内容本身具有换行,那我们也不想要换行呢?把echo换成printf即可。

接下来,我们想用cat打印文件内容,cat指令本质是从键盘上获取内容并输出,但我们用<+文件即可(相当于从文件中获取内容并输出)<叫输入重定向

4.head和tail

这两个指令是为了我们看文件的开头和结尾的 

语法是head 文件名(tail一样)它会默认显示10行,如果我们想控制行数使用选项-数字即可比如head -50 test.txt ,tail同理。如果想查看某一区间呢?混用!假设想看[a,b],先把前b行的内容存到临时文件中,然后在读取临时文件的b-a+1行(用tail)即可。但这样太麻烦了,我们也有不用临时文件的方法,通式:head -b 文件名 | tail -(b-a+1)。“ | ”我们叫管道。可以把这个管道看成临时文件一样,可以多个|加多个命令实现不同的操作结果

5.find指令

find用于找指定路径下的指定文件

语法为 find 路径 -name 文件名相当于windows中的搜索

除此之外,还有一个查找指令which,是用来搜索指定的指令的。指令看起来挺高级的,输入指令就能满足功能,但到底是个啥呢?其实。指令就是一个可执行程序,而且我们也可以自己编写指令,就像c、c++中的自定义函数一样,在Linux系统的指令中,所有自带的指令都在一个/bin的目录下,我们使用指令时,是/bin/ls,但系统自动帮我们省略了,只需要直接输入指令即可使用,但有时候,我们自己想编写一个指令,我们也不一定放在/bin目录下,也可能是在某一目录中,此时如果我们想使用的话,直接输入我们的指令名字就会报错,因为如果直接输入指令名字,他会自动去/bin目录下寻找,找不到就会报错,所以如果我们想使用不在/bin下的指令,包括运行某一文件,需要./文件名字(相对路径)(告诉Linux在当前目录下去找就行了)

6. alias——指定命令起别名

c和c++的自定义函数中,只要函数内部的功能不变,那么起什么名字是我们自己可以控制的,Linux的指令也可以起别名,其中,ll就是ls -l的别名。起别名的办法我们用alias,语法:alias 别名='指令',比如 alias zhangsan='ls -a',以后我们想输入ls -a,只需要输入zhangsan即可。可惜的是,一旦我们重启了服务器,这些别名就会失效。

7.grep

这个指令相当于关键字过滤器,语法:grep '关键字'(有无‘’均可)

啥意思呢?比如我现在的文件有一下数据

以下就是筛选出有big 和Big关键字的行数

很明显,grep进行筛选时是区分大小写的。如果我们不行区分大小写,只要是有big字母的都显示出来就用 -i选项,如果我们想显示出除了big以外的行而不显示big行就用-v选项(也可以组合使用)

8. zip与unzip压缩与解压缩

语法:zip 要压缩成的名称(xxx.zip) 要压缩的名称

这里,我们就把dir1目录压缩成了压缩包,但我们通过底层发现,他只是把dir1这个目录进行了压缩,如果我们进行移动并解压的话,只会获得一个空的dir1目录,需要带一个-r选项进行压缩。

解压缩就是unzip [压缩包名称]。但这种解压的结果只会解压在当前目录,如果我们先解压在其他目录呢?还需要借助选项,语法:unzip 压缩包 -d 指定路径

9. tar指令(打包与解包)

tar的用途其实和zip和unzip差不多,只不过tar的打包只是把多个文件放在一块,并没有实现压缩功能,但我们也可以通过选项来用tar实现压缩。我们先看一下其具体可以带什么选项。

选项太多我们直接上用法。

语法:tar (-可带可不带)czf 新创建压缩包的名字 要打包的文件。

c表示创建一个压缩包文件,z表示过程中不仅要打包还要压缩,f后面接你的压缩包名字,在zip的压缩中,我们的压缩包名字都是xxx.zip,tar这里我们的后缀是xxx.tar.gz,我们直接简写为xxx.tgz。选项v就是在压缩中显示被压缩的文件。

如果我们要解压tgz文件,只需要改一个选项即可,把c改成x,即tar xzf 压缩包。这种语法默认会解压缩在当前路径,如果要改变其解压路径需要再加一个 -C选项,即tar xvzf 压缩包 -C 路径。

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

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

相关文章

特种作业操作之低压电工考试真题

1.下面&#xff08; &#xff09;属于顺磁性材料。 A. 铜 B. 水 C. 空气 答案&#xff1a;C 2.事故照明一般采用&#xff08; &#xff09;。 A. 日光灯 B. 白炽灯 C. 压汞灯 答案&#xff1a;B 3.人体同时接触带电设备或线路中的两相导体时&#xff0c;电流从一相通过人体流…

国产编辑器EverEdit - 目录树

1 目录树 1.1 应用场景 在编辑文档时&#xff0c;一些关联文档可能都存放在相同的目录或者相近的目录&#xff0c;如果可以显示当前文件的目录树&#xff0c;则可以快速的在这些关联文件中切换。 1.2 使用方法 选择菜单查看 -> 停靠窗格 -> 目录树&#xff0c;在目录树…

MiniHack:为强化学习研究提供丰富而复杂的环境

人工智能咨询培训老师叶梓 转载标明出处 想要掌握如何将大模型的力量发挥到极致吗&#xff1f;叶老师带您深入了解 Llama Factory —— 一款革命性的大模型微调工具&#xff08;限时免费&#xff09;。 1小时实战课程&#xff0c;您将学习到如何轻松上手并有效利用 Llama Facto…

SET alter system reload

目录标题 alter system 只是 写 auto 文件SET & alter system1. **会话级别参数&#xff08;Session-level parameters&#xff09;**2. **系统级别参数&#xff08;System-level parameters&#xff09;**3. **某些特定的超级用户参数**4. **修改时生效的参数**总结&#…

苏州东菱振动试验仪器有限公司:振动试验设备行业的领军企业与发展历程

本文地址&#xff1a;http://www.aiqimao.com/zhidao/detail?id37943 苏州东菱振动试验仪器有限公司在振动试验仪器行业享有较高的知名度。公司致力于向众多行业供应优质振动试验设备&#xff0c;并提供专业服务。经过多年努力&#xff0c;该公司在市场上取得了显著成绩。以下…

使用EVE-NG-锐捷实现OSPF

一、OSPF基础知识 Open shortest Path First(OSPF)开放式最短路径优先协议 1.OSPF的关系状态 (1)邻居关系(TWO-WAY) 只发送hello包不发送LSA包(链路状态通告包) (2)邻接关系(FULL) OSPF设备与设备之间相互建立OSPF关系&#xff0c;初始为邻居关系(TWO-WAY)状态&#xff0…

C#/.NET/.NET Core技术前沿周刊 | 第 23 期(2025年1.20-1.26)

前言 C#/.NET/.NET Core技术前沿周刊&#xff0c;你的每周技术指南针&#xff01;记录、追踪C#/.NET/.NET Core领域、生态的每周最新、最实用、最有价值的技术文章、社区动态、优质项目和学习资源等。让你时刻站在技术前沿&#xff0c;助力技术成长与视野拓宽。 欢迎投稿、推荐…

戴尔电脑设置u盘启动_戴尔电脑设置u盘启动多种方法

最近有很多网友问&#xff0c;戴尔台式机怎么设置u盘启动&#xff0c;特别是近两年的戴尔台式机比较复杂&#xff0c;有些网友不知道怎么设置&#xff0c;其实设置u盘启动有两种方法&#xff0c;下面小编教大家戴尔电脑设置u盘启动方法。 戴尔电脑设置u盘启动方法一、戴尔进入b…

【搜索回溯算法】:BFS的魔力--如何使用广度优先搜索找到最短路径

✨感谢您阅读本篇文章&#xff0c;文章内容是个人学习笔记的整理&#xff0c;如果哪里有误的话还请您指正噢✨ ✨ 个人主页&#xff1a;余辉zmh–CSDN博客 ✨ 文章所属专栏&#xff1a;搜索回溯算法篇–CSDN博客 文章目录 一.广度优先搜索&#xff08;BFS&#xff09;解决最短路…

Dest1ny漏洞库:用友 U8-CRM 系统 ajaxgetborrowdata.php 存在 SQL 注入漏洞

用友U8-CRM系统ajaxgetborrowdata.php存在SQL注入漏洞&#xff0c;文件多个方法存在SQL注入漏洞&#xff0c;未经身份验证的攻击者通过漏洞执行任意SQL语句&#xff0c;调用xp_cmdshell写入后门文件&#xff0c;执行任意代码&#xff0c;从而获取到服务器权限。 hunter app.n…

C# 添加、替换、提取、或删除Excel中的图片

在Excel中插入与数据相关的图片&#xff0c;能将关键数据或信息以更直观的方式呈现出来&#xff0c;使文档更加美观。此外&#xff0c;对于已有图片&#xff0c;你有事可能需要更新图片以确保信息的准确性&#xff0c;或者将Excel 中的图片单独保存&#xff0c;用于资料归档、备…

接口 V2 完善:分布式环境下的 WebSocket 实现与 Token 校验

&#x1f3af; 本文档详细介绍了如何使用WebSocket协议优化客户端与服务端之间的通信&#xff0c;特别是在处理异步订单创建通知的场景中。通过引入WebSocket代替传统的HTTP请求-响应模式&#xff0c;实现了服务器主动向客户端推送数据的功能&#xff0c;极大地提高了实时性和效…

【ProtoBuf 安装】ProtoBuf在window/Linux下的安装 创建/删除swap分区

文章目录 1.ProtoBuf在window下的安装2.ProtoBuf在Linux下的安装创建swap分区命令解析关闭swap分区删除swap分区的影响 1.ProtoBuf在window下的安装 1、下载ProtoBuf编译器 下载地址&#xff1a;https://github.com/protocolbuffers/protobuf/releases 如果要在 C 下使用 Pro…

day7手机拍照装备

对焦对不上&#xff1a;1、光太暗&#xff1b;2、离太近&#xff1b;3、颜色太单一没有区分点 滤镜可以后期P 渐变灰滤镜&#xff1a;均衡色彩&#xff0c;暗的地方亮一些&#xff0c;亮的地方暗一些 中灰滤镜&#xff1a;减少光差 手机支架&#xff1a;最基本70cm即可 手…

vue事件总线(原理、优缺点)

目录 一、原理二、使用方法三、优缺点优点缺点 四、使用注意事项具体代码参考&#xff1a; 一、原理 在Vue中&#xff0c;事件总线&#xff08;Event Bus&#xff09;是一种可实现任意组件间通信的通信方式。 要实现这个功能必须满足两点要求&#xff1a; &#xff08;1&#…

分享|instructionfine-tuning 指令微调是提高LLM性能和泛化能力的通用方法

《生成式AI导论》课程中&#xff0c;李宏毅老师提到一篇关于“ instruction fine-tuning” 指令微调的论文&#xff1a; 《Scaling Instruction-Finetuned Language Models》 摘要分享&#xff1a; 事实证明&#xff0c; 在一组以指令形式表达的数据集上微调语言模型可以提…

拟合损失函数

文章目录 拟合损失函数一、线性拟合1.1 介绍1.2 代码可视化1.2.1 生成示例数据1.2.2 损失函数1.2.3 绘制三维图像1.2.4 绘制等高线1.2.5 损失函数关于斜率的函数 二、 多变量拟合2.1 介绍2.2 代码可视化2.2.1 生成示例数据2.2.2 损失函数2.2.3 绘制等高线 三、 多项式拟合3.1 介…

unity商店插件A* Pathfinding Project如何判断一个点是否在导航网格上?

需要使用NavGraph.IsPointOnNavmesh(Vector3 point) 如果点位于导航网的可步行部分&#xff0c;则为真。 如果一个点在可步行导航网表面之上或之下&#xff0c;在任何距离&#xff0c;如果它不在更近的不可步行节点之上 / 之下&#xff0c;则认为它在导航网上。 使用方法 Ast…

2025美国大学生数学建模竞赛美赛E题成品参考论文(48页)(含模型,可运行代码,求解结果)

2025美国大学生数学建模竞赛E题成品参考论文 目录 一、问题重述 二、问题分析 三、模型假设 四、模型建立与求解 4.1问题1 4.1.1问题1思路分析 4.1.2问题1模型建立 4.1.3问题1代码&#xff08;仅供参考&#xff09; 4.1.4问题1求解结果&#xff08;仅供参考&…

开源音乐管理软件Melody

本文软件由网友 heqiusheng 推荐。不过好像已经是一年前了 &#x1f602; 简介 什么是 Melody &#xff1f; Melody 是你的音乐精灵&#xff0c;旨在帮助你更好地管理音乐。目前的主要能力是帮助你将喜欢的歌曲或者音频上传到音乐平台的云盘。 主要功能包括&#xff1a; 歌曲…