Linux基本指令(下)

news2024/11/15 3:57:40

Linux基本指令(下)

  • 前言
  • cat指令
  • more命令
  • less命令
  • head命令
  • tail命令
  • wc指令
  • date指令
  • cal指令
  • find指令
  • grep指令
  • top命令
  • alias命令
  • zip/unzip命令

前言

上一篇Linux基本指令主要讲解了关于文件操作方面的指令,接下来这一片Linux基本指令主要讲解一下关于文件内容方面的基本指令;

cat指令

语法 :cat 选项 目录
功能: 查看目标文件的内容;
常用选项
-b :不对空行进行标行号;
-s : 压缩多余空行,对多余空行不进行输出;
-n :对所有行进行标号并输出;
实际演练:
现在我们利用命令输出num.txt文件里面的每一行的行号:
在这里插入图片描述
现在我们对num.txt里面的内容稍加修改,以便演示后面的选项:
在这里插入图片描述
我们向文件的头部加入了几行空格,但是现在我们不想让这些多余空行输出出来,我们就可以带上-s选项:
在这里插入图片描述
当然我们不想对空行进行标号,可以带上选项 -b
在这里插入图片描述
好,既然讲到这里了,我们现在来拓展一点小知识
我们现在就简单的揭晓一个命令:echo "字符串"(关于其选项,读者可以自行去查man手册),这个命令的作用呢是将字符串输出到显示器上面;
我们都知道其实命令也是一个一个可执行文件,就与我们在Window环境下生成的.exe文件是一样,简单来说我们写的程序也可叫做指令,这二者之间没有什么本质区别,好现在我们回归主题:那么命令既然是个程序的话,那么现在他的作用就是将字符串输出到显示器,在linux系统中万物皆是文件,包括我们的网卡、显示器、键盘等等,那么好既然显示器是一个文件是呗,弄我echo的本质是不是就是向一个文件里面输出数据或者叫做向这个文件里面写入数据(都是站在程序的角度来看的),那我们可不可以改变echo的输出方向呢,让他不在向显示器输出数据,而向另一个文件输出?
答案是可以的!!!
我们把这种操作叫做输出重定向,就是重新改变程序的输出方向!!!!
在这里插入图片描述
我们改怎么表示输出重定向?
就比如我现在想要向test.txt里面输入“测试1”,可用命令:
echo "测试1" > test.txt,这里的>就表示输出重定向
在这里插入图片描述
我们来多玩几次:
在这里插入图片描述
我们可以发现每次重定向输出的结构貌似都是最后一次的结果,不会保留上一次的结果,也就是说,每次重定向输出数据之前的系统会先将文件里面的内容清理干净,再输出!!!也就是覆盖式输出;我们不想覆盖掉上一次的内容怎末办?
那就用追加重定向呗!>>这两个箭头表示追加重定向!!!
在这里插入图片描述
那如果我想清空该文件怎末办?
直接指向命令 > test.txt将空白输出到test.txt问价里面去:
在这里插入图片描述
啥内容也就没有了!!
好嘞!理解上面了,我们再回到cat命令来,既然都有输出重定向(改变输出方向),那有没有输入重定向(改变输入方向嘞)?
有的,cat命令就是先从文件里面读取数据,再打印数据的!!
如果我们不在cat后面加任何参数的话,就是默认从键盘读取数据,读到啥就回显啥:
在这里插入图片描述
按下Ctrl+C就可以退出了;
现在我们改变cat的输入方向:
在这里插入图片描述
总结一下:
1、> 表示输出重定向;
2、>> 表示追加重定向;
3、< 表示输入重定向;

more命令

虽然cat是能查看文件内容,但是太麻烦了,你想假设文件内容太长,cat一下就把你的内容刷到了末尾,你想看前面的还得往前拉,很是麻烦,为了解决这个问题,我们可以采用more命令来查看文件内容;

语法 :more 选项 文件
功能: 查看文件内容;
常用选项
-n:代表一个具体数字,比如1、2、3、4……等,表示地一次先显示n行,按空格又显示n行,按回车显示一行;
按q退出;
实例演示:
在这里插入图片描述
在这里插入图片描述
当然这个命令查看文件内容的话,只能下翻不能回翻,很是麻烦,我们一般用它也用的比较少,我们更习惯用less;

less命令

语法 :less 选项 文件
功能: 查看文件内容;
常用选项
-i : 忽略搜索时的大小写
-N: 显示每行的行号
/字符串:向下搜索“字符串”的功能
?字符串:向上搜索“字符串”的功能
n:重复前一个搜索(与 / 或 ? 有关)
N:反向重复前一个搜索(与 / 或 ? 有关)
实例演示:
在这里插入图片描述

head命令

语法 :head 选项 文件
功能: 查看文件的前n行(n是你带的选项决定的,如果没有n默认显示前10行);
常用选项
-n: 查看前n行内容
实例演示
在这里插入图片描述
默认显示前10行的内容:
在这里插入图片描述

tail命令

与head相对的就是tail命令了

语法 :tail 选项 文件
功能: 查看文件后n行的内容(n由我们所带的选项决定,默认是后10行);
常用选项
-n : 查看后n行的内容;
-f :循环读取,j就是不断获取文件最尾部的内容,并且不断刷新,使你看到文件最新的内容;
实例演示
在这里插入图片描述
默认情况:
在这里插入图片描述

wc指令

语法 :wc 选项 文件
功能: 输出文件行数、单词数、字节数;
常用选项
-l : 输出文件行数
-w: 输出文件单词数
-c 输出文件字节数;
实战演练 :
假设我们现在只想统计text.txt的行数,那么我们就可以利用指令:wc -l text.txt;
在这里插入图片描述
我们也可以输出其单词数、字节数:
在这里插入图片描述
那么现在问题来了,我如果想要统计[500,520]的行数嘞?
我们虽然能一眼看出来,但是计算机不行啊,我们得告诉他具体指令他才能算出来,
怎末办?
方法1
1、利用head指令将文本前520行数据利用重定向输出到一个叫做tmp.txt的文件里面;
2、再利用tail指令将tmp文本后20行数据利用输出重定向输出到tmp2.txt文件里面;
3、最后再利用指令wc -l tmp2.txt, 去统计tmp.txt文件里面的行数;在这里插入图片描述
这样创建临时文件的方法很是麻烦;
我们现在利用第二种方法:
方法2:
在这里插入图片描述
利用管道的概念,我们巧妙的解决了行数问题;
那么什么是管道?
在这里插入图片描述
利用管道里我们就能利用命令批量化高效化的处理问题!!!可以将多个命令链接起来使用!!
我们可以将这个管道理解成一个临时的文件!!!

date指令

1、直接显示时间:命令:date
2、格式化显示时间;命令:date +"%Y-%m-%d %H-%M-%S";格式的话最好用双引号括起来,避免由空格引起的不必要的麻烦!
%Y:年份
%m:月份
%d:日
%H:小时
%M:分钟
%S:秒
3、如果我们当前时间有误,我们可以利用命令date -s "格式",来重新设置时间;
date -s//设置时间只有拥有root权限才可以;
格式如下:
"20221101",只设置年月日,具体时间会被置为00000011:36:21,只设置具体时间,不会对日期进行改变;
“01:01:01 2008-05-23,这样可以设置全部时间;
"01:01:01 20080523",这样可以设置全部时间;
“2008-05-23 01:01:01,这样可以设置全部时间;
"20080523 01:01:01",这样可以设置全部时间;
4、时间戳
date +%s//获得当前时间的时间戳;(当前时间->时间戳)
什么是时间戳?
Unix时间戳(英文为Unix epoch, Unix time, POSIX time 或 Unix timestamp)是从197011日(UTC/GMT的午夜)开始所经过的秒数,不考虑闰秒。
5、时间
date -d@ 时间戳//将时间戳转换为具体时间

cal指令

cal指令也是一个关于时间的指令:

语法 :cal 选项 [月份] [年份]
功能: 查看指定年月的日历;
常用选项
-3 : 查看当前月、上一月、下一月的日历;
-y:显示当前年份日历;
-j:显示在当年中的第几天;
实际演示
cal 什么也不带,默认是当年当前月份的日历:
在这里插入图片描述
比如我们只想显示指定年月的时间,比如 2022 12月份的日历,我们就可以输入命令cal 12 2022
在这里插入图片描述
当我们仅输入一个数字时,默认是带的数字表示年,则cal命令会将该年的日历全部展现出来:
在这里插入图片描述

find指令

语法 :find 选项 目录 文件名
功能: 用于在指定路径系查找文件,并做出相应的处理(可能访问磁盘)
常用选项
-name :
实战演练:
比如现在我们想要搜索下一num.txt文件:
当然我们可以在指定路径去查找,如果没有指定路径则默认在当前目录下查找:
在这里插入图片描述
指定路径查找:
在这里插入图片描述
当然find还有其他很多选项,这里只讲解 -name选项;
接下来咱们再讲解连个也跟查找相关的命令:
which 指令
查看指令(指令也是个可执行程序)所在路径,和取别名的情况!!
比如:
在这里插入图片描述
whereis 指令
搜索包含关键字的文档;
比如:
在这里插入图片描述
当没有搜到时,它会直接显示关键字名称:
在这里插入图片描述

grep指令

语法 :grep 选项 “字符串” 文件名
功能: 用于过滤出含有指定字符窜的数据;
常用选项
-i :忽略大小写
-v : 过滤出不含指定字符串的数据;
-n :输出数据时带上行号;
实战演练:
在这里插入图片描述
现在我们筛选出含有字符串 “aaa“的:
在这里插入图片描述
再加上个忽略大小写:
在这里插入图片描述
输出不含“aaa”的,忽略大小写,并且顺带输出行号:
在这里插入图片描述
这里在介绍几个简单命令:
sort 选项 文件
对文件进行正向排序并输出,如果带上选项-r的话就是降序:
在这里插入图片描述
降序:
在这里插入图片描述
接着我们在介绍一个去重的命令,由于上述文本不方便演示,我们接着重新写一个文本来演示:
uniq 选项 文件
对文件去重:
在这里插入图片描述
我们对其排序并去重:
在这里插入图片描述

top命令

查看Linux环境下的任务管理器:
在这里插入图片描述
输入q退出;

alias命令

该命令主要用来给比较复杂的命令取别名,比如:
在这里插入图片描述

我们给ls -a -l -1命令取别名为myls:
那么myls与ls -a -l -1具有一样的作用:
在这里插入图片描述

zip/unzip命令

语法 :zip 选项 压缩文件.zip 目录或文件名
功能: 将目录或文件打包压缩成一个以.zip结尾的压缩文件
常用选项
-r :递归处理,目录下的子目录或文件
实战演练
在这里插入图片描述
在这里插入图片描述
现在我们将lesson4压缩成一个zip文件:
在这里插入图片描述
现在我们有了lesson4的压缩包,我们想要知道压缩成功了没有,我们就需要对其解压看看:
为此我么接着学习解压命令:
这个命令很简单:直接unzip 压缩文件.zip -d 解压到指定目录
为此我们现在来解压一下lesson4.zip
在这里插入图片描述
我们现在来查看一下lesson4里面有什么:
在这里插入图片描述
这是为什么?我不是已经成功压缩了嘛;
主要是由于我们直接压缩的话zip命令就只会压缩目录,不会压缩其里面的子目录和文件,如果我们想要连其子目录和文件一起压缩的话,我们需要带上选项-r:
接下来我们删除掉原来的压缩文件重新压缩:
在这里插入图片描述
我们再来查看一下文件里面的内容:
在这里插入图片描述
我们可以发现lesson4里面的所有文件都被压缩进来了;
那么为什么要压缩呢?
1、为了利用有限的空间装载更多的数据;
2、方便管理零散的文件,提高传输速率;

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

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

相关文章

聊聊推荐系统的评测(下)

这是鼎叔的第三十九篇原创文章。 行业大牛和刚毕业的小白&#xff0c;都可以进来聊聊。 欢迎关注本人专栏和微信公众号《敏捷测试转型》&#xff0c;大量原创思考文章陆续推出。 上篇请查阅&#xff1a;聊聊推荐系统的评测&#xff08;上&#xff09; 下篇&#xff0c;我们…

基于SSM的旅游景点购票管理系统

1、项目介绍 基于SSM的旅游景点购票管理系统拥有两种角色&#xff0c;管理员和用户 管理员&#xff1a;用户管理、景点管理、购票管理、酒店管理、客房管理、客房预订管理、轮播图管理等 用户&#xff1a;登录注册、景区购票、评论、预订客房、收藏、发布攻略等 2、项目技术…

App推广渠道追踪技术更新及应用

如今App推广渠道追踪对App厂商来说非常重要&#xff0c;因为App厂商需要通过渠道追踪来寻找成本最低的和价值最高的获客渠道。 但是现在线上渠道的选择五花八门&#xff0c;比如各种新闻门户网站、字节系平台、腾讯系平台等&#xff0c;那么到底该花多少钱去获取用户&#xff…

本地浏览器打开远程服务器上的Jupyter Notebook

文章目录一、配置过程二、其他需求后台运行Jupyter端口映射实验环境及需求&#xff1a;远程服务器配置了 Jupyter Notebook&#xff0c;本地电脑没有相关的环境&#xff0c;想要在服务器端启动 Jupyter Notebook&#xff0c;然后直接从本地浏览器打开进行操作。 一、配置过程 …

【百度AI_文字识别】示例身份证图片识别(代码官方文档完整,只需获得修改参数、下载类)

文章目录提取身份证信息第一步&#xff1a;登录第二步&#xff1a;获取资源第三步&#xff1a;获取access_token参数&#xff08;AuthService.java&#xff09;第四步&#xff1a;请求代码Idcard.java第五步&#xff1a;修改Idcard.java文件注意&#xff1a;返回错误提取身份证…

【跨境电商卖家】Instagram营销初学者指南(一):重要性、优势

关键词&#xff1a;跨境电商卖家、instagram营销 1.为什么 Instagram 营销对企业很重要&#xff1f; Instagram 是接触大量受众的完美渠道——每月有超过10 亿活跃用户。平均而言&#xff0c;用户每天在 Instagram 上花费 53 分钟&#xff0c;这使得该平台成为仅次于Facebook的…

微信网页支付小白指南-域内浏览器支付 + 外部浏览器支付

关于微信网页支付&#xff0c;分为微信域内浏览器支付 外部浏览器支付&#xff0c;两者还是稍微有点点区别的&#xff0c;内部浏览器即在微信内打开网页&#xff0c;进行支付&#xff0c;支付调用是需要开通JSAPI支付方式&#xff1b;而外部浏览器「比如浏览器等」则需要开通 …

Leetcode刷题day2|数组二|977.有序数组的平方 ,209.长度最小的子数组 ,59.螺旋矩阵II

文章目录一、有序数组的平方错误的尝试思路注意AC代码暴力版本双指针方法二、长度最小的子数组错误的尝试思路滑动窗口介绍注意AC代码三、螺旋矩阵错误的尝试思路注意AC代码继承前边循环变量的写法不继承前边循环变量的做法四、数组做题思路总结基本知识解题思路一、有序数组的…

将爱心代码设为电脑屏保,俘获少女芳心,还能假装黑客,在酷炫的界面中保护隐私

本文介绍 Hacker Screen Saver 一款开源 Windows 屏保的使用。Hacker Screen Saver 是一款 .NET 设计的屏幕保护程序&#xff0c;可以显示 HTML 页面&#xff0c;你可以将黑客模拟器的网页&#xff0c;或者爱心代码网页设置为你的 Windows 电脑屏保。详细介绍了软件的使用和对应…

apritag 定位记录 C++ opencv 3.4.5

参考&#xff1a;2021-06-23 基于AprilTag的位姿估计&#xff0c;原理&#xff0c;完整代码&#xff08;相机坐标系、世界坐标系&#xff09; - 简书 Apriltag使用之二&#xff1a;方位估计(定位)_arczee的博客-CSDN博客_apriltag位姿估计 1.AprilTag概述 AprilTag是一种视觉…

Matlab:绘制日期时间

Matlab&#xff1a;绘制日期时间绘制日期时间数据指定坐标区范围指定刻度值指定刻度格式存储日期时间的坐标区属性导出和转换数据提示值绘制来自文件的日期时间数据此示例说明如何使用存储为 datetime 和 duration 数组的日期时间创建线图。datetime 数据类型表示时间点&#x…

Linux I/O 原理和 Zero-copy 技术全面分析

两万字长文从虚拟内存、I/O 缓冲区&#xff0c;用户态&内核态以及 I/O 模式等等知识点全面而又详尽地剖析 Linux 系统的 I/O 底层原理&#xff0c;分析了 Linux 传统的 I/O 模式的弊端&#xff0c;进而引入 Linux Zero-copy 零拷贝技术的介绍和原理解析&#xff0c;将零拷贝…

项目终于收尾了,第一次体验到专业项目管理软件的魅力

转眼到了年底&#xff0c;我跟进的项目也到了收尾阶段。之前陆陆续续给大家分享了入职新公司后&#xff0c;使用新引进的项目管理软件做项目的一些体会和心得&#xff0c;其中一些比较高效便捷的技巧和功能模块也引起了大家的兴趣。 最近刚好临近项目尾声&#xff0c;也给大家…

Maven的详解

在java中Maven就是一个包管理工具,在没有包管理工具时,我们要做一个java项目,需要第三方依赖包,将别人打包好的Jar包下载到本地,然后手动指定给项目.操作比较麻烦,比如版本控制,有的甚至还有其他包的依赖,属实是繁琐,技术是不断地迭代的,所以就出现了Maven,用了Maven之后,需要什…

安装nodejs的详细流程保姆级(踩了无数次坑)

node 简述: node的使用已经是前端选手基本的选择,其强大的功能甚至到了要和后端抢活干的地步,同时想要搭建个人的博客用node工具也是非常方便的,作为一名后端选上,刚开始准备下载node的时候是因为想要去搭建个人的博客,但是下载之后,使用npm install命令的时候一直报错,无奈找…

G1D14fraudgitpipenvdf操作APT论文RCE37-40服务器搭建

一、fraud 突然发现电脑上还没有python编译器&#xff0c;xswl&#xff0c;快装一下 &#xff08;一&#xff09;git操作 &#xff08;二&#xff09;git中分支的作用 &#xff08;三&#xff09;虚拟环境 1、pip install后的包一般放在哪里 lib/site-packages下 真的是欸&a…

LiveData

LiveData是一个抽象类&#xff0c;那么我们从简单的MutableLiiveData开始剖析&#xff0c;先看源码 源码太简洁了&#xff0c;就是继承LiveData&#xff0c;然后重写了父类的方法&#xff0c;并且没有多余的操作&#xff0c;都是直接使用父类方法里的逻辑&#xff0c;那我们就根…

安全防护的原则

电力行业 工控安全解决思路保障框架从电力行业对工控安全需求看&#xff0c;电力企业在主要是以合规性建设为主&#xff0c;在 2004 年原电监会 5 号令颁布开始&#xff0c;大部 分的电厂控制系统安全 建设已经按照 5 号令的要求进行了整改&#xff0c;形成“安全分区、网络专…

数电笔记总结(三)(逻辑门电路)

目录逻辑门基础逻辑门电路分立元件基本逻辑门电路TTL集成门电路&#xff08;与非门&#xff09;两种特殊门&#xff08;重点&#xff09;1.集电极开路门&#xff08;OC门&#xff09;2.三态门电路逻辑门基础 逻辑门电路 门电路&#xff1a;具有控制信号通过或不通过能力的电路…

某某桥的检测和加固设计

目录 某某大桥桥梁检测及加固设计报告 1 0 总论 2 0.1 检测目的 2 0.2 桥梁结构混凝土强度检测[1] 2 0.3 结构综合评定指标 4 0.4桥梁承载能力[3] 4 0.5 桥梁结构荷载试验 6 0.6 主要结果与结论 8 1某某大桥简介 11 1.1某某大桥简介 11 1.2 检测仪器与设备 15 2 外观检查与检测…