时间、查找、打包、行过滤与指令的运行——linux指令学习(二)
前言:本节内容标题虽然为指令,但是并不只是讲指令, 更多的是和指令相关的一些原理性的东西。 如果友友只想要查一查某个指令的用法, 很抱歉, 本节不是那种带有字典性质的文章。但是如果友友是想要来学习的, 那么本篇文章很适合, 而且非常适合初入linux的小白。
时间指令date
date能够打印当前或者某个时间的日期。 使用方法如下
什么都不加直接date :

date后面也可以加上参数, 比如加上+%Y-%m-%d%H%M%S, 其中Y是年, m是月,是日, H是时, M分, S是秒:(注意, 中间的分隔符可以自己控制)

也可以使用冒号

也可以不加某些参数,比如说不加年, 不加日

最重要的一种用法就是使用date +%s, 这个是打印时间戳:

那么, 知道了时间相关指令。 那么这些指令有什么作用呢?
在我们工作后, 公司中都要写日志。当程序运行到某个关键的时刻的时候, 都要打印日志。日志的内容有着分类: 时间、日志等级、日志的具体信息、 其他信息。所以,时间的指令,尤其是时间戳的概念和公司要写的日志密切相关。
因为对于时间戳来说, 时间戳是一个从1970年1月1日到现在所经过的秒数。这个数字是一直在增大的。 它单调递增, 所以我们如果规定一个起始时间, 一个终止时间。 那么它就很容易进行范围的查找。这就是为什么公司日志和时间戳密切相关。
而我们使用时间戳。 date指令也可以将某一个时刻的时间戳换算成年月日的形式, 如图:

另外:注意这里打印的时间是北京时间。 而时间戳的规定是从伦敦(好像是伦敦, 0度经线位置)1970年1月1日零时, 所以我们打印0时间戳的时候, 打印的是八点:

补充:linux日历
cal可以打印linux中的日历, 后面参数可以加某个年份就会打印出该年所有月份的日历:


查找
查找指令有三个:find, which, whereis
- find:find 路径 -name 文件名——》在某个路径下寻找所有文件名是要查找的文件名的文件, 它真的会在磁盘中进行全面查找。 (这里可以使用*号配合查找)
- which: which 指令——》主要是在特定目录下寻找某个指令, 特定目录就是/usr/bin:
- whereis:whereis也是在特定的路径下进行查找, 使用whereis不仅可以找到文件所在路径, 还可以找到man手册, 压缩包, 安装包静态库之类的东西:
行过滤grep
grep是行过滤文件指令, 它能够过滤掉文本中不需要的行, 只打印我们想要的或者我们想要知道的文本行。
用法:grep 文本内容 文本。 意思就是将文本中那些没有文本内容的行过滤掉不打印, 纸打印存在文本内容的行。
同时grep上也可以添加指令
- -v: -v指令能够将文本中原本应该打印的过滤掉, 原本应该过滤掉的重新打印。
- -i: -i能够在进行文本选择是否过滤的时候忽略文本内容的大小写。
- -n: 打印行号
grep后面也可以加上多个文件或者目录。 如果跟目录, 就要在前面加上-R选项, 意思是递归搜索。 最终结果都是打印文件路径 : 文件内容。

打包和压缩
首先, 我们要想明白为什么要打包和压缩, 打包和压缩有什么好处。
首先, 能够被打包和压缩的, 一定是一个整体。 那么它们就不能轻易的分开, 如果我们没有把文件打包, 那么在传输过程中就容易丢失文件。 而打包就是将多个文件——》一个文件, 不容易造成文件的丢失。
其次, 压缩文件后还能减小文件的体积, 方便我们下载, 减少占用磁盘空间。 这里起始最重要的是方便我们下载。
打包的工具有zip, tar, unzip
//zip
zip是一个linux中的软件(也可以叫做打包压缩方案, 打包压缩方案有很多, 想windows中的好压, 快压等等都是不同的压缩软件, 也叫压缩方案), 所以我们要先使用root账号下载。
下载后我们就可以使用zip压缩或者解压文件。 使用方法:
zip 文件名 要压缩的文件:将选择的文件进行压缩, 如果要压缩的是一个文件夹, 就要加上-r——》zip -r 文件名 要压缩的文件, 也可以使用多个文件进行压缩——》zip 文件名 要压缩的文件1 要压缩的文件2……


//unzip
zip和unzip是对应的, unzip就是解压。 用法如下:
- unzip 文件名: 就是将对应文件名的压缩包解压
- unzip 文件名 -d 要解压到的路径: 将文件名对应的压缩包解压到某个路径。
//tar
tar也能够进行压缩和解压操作。 这是系统中自动配备的压缩方案。不需要进行下载。 这里列出三种常用用法:
- tar czf 文件名 要压缩的文件 : 将要压缩的文件压缩
- tar tzf 文件名: 预览压缩包
- tar xzf 文件名: 解压压缩包
bc计算器
bc是linux中的计算器,类似于windows中的浮点。
uname
uname可以打印和计算机相关的信息。
uname - a是打印全部的信息:

第二个蓝框框打印的是linux的内核版本, 第三个蓝框框是计算机的体系结构, x86是代表32位。 x86_64 等同于 x64。
如果我们只想获取计算机的体系结构, 那么就可以使用uname -r, 那么就只获得内核版本以及体系结构

//lscpu可以查看当前cpu的版本:

//tab
tab健可以快速打出指令, 连点两次tab可以打印出我们可以使用的指令个数。

//cral + r
cral + r可以对历史中的指令进行搜索, 然后快速打出指令。 但是cral只会保存我们最近使用的1000条指令, 可以修改。 同时使用history可以进行查看。

指令的运行
如何理解指令的运行。
首先我们要先理解什么是命令行, 什么是命令行解释器。

首先, 图中的用户名, 主机名, 当前目录, 以及命令行提示符等等这些, 组成了命令行。 这其实是就是bash命令行。 bash是一种命令行解释器。
命令行解释器有: shell, bash、sh, 这些shell包含了bash,sh。 它是所有命令行解释器的同城。 windows的图形化界面本质上也是一种命令行解释器。
那么, 为什么要有命令行解释器, 这需要知道命令行解释器的作用和意义:命令行解释器可以将命令翻译给操作系统的核心处理。 同时还能将核心的处理结果翻译给使用者。也就是说命令行解释器是对命令行进行解释, 同时还能变相的保护操作系统, 可以对于用户的非法请求进行拦截。
为什么说命令行解释器会保护操作系统?这需要从宏观和微观角度理解操作系统。
首先, 宏观上的操作linux就是linux上面的各种应用, 命令行解释器以及linux内核组合成的linux机器。 但是微观上面的操作系统就是linux内核。 kernel。 linux内核并不相信用户, 所以会在外面设置一个shell, 壳子。 来作为与用户进行交互的中转层, 也就是命令行解释器。
而且,我们所有的指令操作, 最终都会在linux内核中进行执行。 而操作系统, 也就是linux内核的操作难度较高, 我们不能直接对linux内核打交道, 所以我们需要有一个命令行解释器进行辅助。

知道了这些之后, 我们就可以知道, 我们输入的指令, 其实就是我们输入一串字符。 然后命令行解释器将这些指令翻译给linux内核, 然后内核运行出结果再交给命令行解释器, 命令行解释器再显示给我们。
--------以上, 就是本节全部内容。 下面是本节内容的笔记

相关文章:
时间、查找、打包、行过滤与指令的运行——linux指令学习(二)
前言:本节内容标题虽然为指令,但是并不只是讲指令, 更多的是和指令相关的一些原理性的东西。 如果友友只想要查一查某个指令的用法, 很抱歉, 本节不是那种带有字典性质的文章。但是如果友友是想要来学习的,…...
android CameraX构建相机拍照
Android CameraX 是一个 Jetpack 支持库,旨在简化相机应用的开发工作。它提供了一致且易用的API接口,适用于大多数Android设备,并可向后兼容至Android 5.0(API级别21)。 CameraX解决了在多种设备上实现相机功能时所遇…...
【普中】基于51单片机的矩阵电子密码锁LCD1602液晶显示 proteus仿真+程序+设计报告+讲解视频
【普中】基于51单片机的矩阵电子密码锁LCD1602液晶显示设计 1.主要功能:讲解视频:2.仿真3. 程序代码4. 设计报告5. 设计资料内容清单&&下载链接资料下载链接: 【普中】基于51单片机的矩阵电子密码锁LCD1602液晶显示设计 ( proteus仿真…...
工厂水电燃气表流量计等能耗计量仪表非侵入式拍照抄表的方案
在企业园区、工厂等企事业单位,传统的手动抄表方式已逐渐不能满足现代化、信息化管理的需求。为了提高抄表工作的效率,减少人工操作的误差,同时保障数据的安全性和实时性,我们提出了拍照采集抄表方案。本方案旨在通过拍照的方式&a…...
LLM大模型应用中的安全对齐的简单理解
LLM大模型应用中的安全对齐的简单理解 随着人工智能技术的不断发展,大规模语言模型(如GPT-4)的应用越来越广泛。为了保证这些大模型在实际应用中的性能和安全性,安全对齐(Safe Alignment)成为一个重要的概…...
clickhouse-jdbc-bridge rce
clickhouse-jdbc-bridge 是什么 JDBC bridge for ClickHouse. It acts as a stateless proxy passing queries from ClickHouse to external datasources. With this extension, you can run distributed query on ClickHouse across multiple datasources in real time, whic…...
java中Comparator函数的用法实例?
在Java中,Comparator接口用于比较两个对象的顺序,常用于集合的排序。自Java 8开始,Comparator接口得到了增强,提供了许多默认方法,使得排序逻辑更加灵活和强大。下面将通过几个实例来展示Comparator的用法。 示例1&am…...
mysql实战入门-基础篇
目录 1、MySQL概述 1.1、数据库相关概念 1.2、MySQL数据库 1.2.1、版本 1.2.2、下载 1.2.3、安装 输入MySQL中root用户的密码,一定记得记住该密码 1.2.4、启动停止 1.2.5、客户端连接 1.2.6、数据模型 2、SQL 2.1、SQL通用语法 2.2、SQL分类 2.3、DDL 2.3.1、数据…...
阶段三:项目开发---民航功能模块实现:任务24:航空实时监控
任务描述 内 容:地图展示、飞机飞行轨迹、扇区控制。航空实时监控,是飞机每秒发送坐标,经过终端转换实时发送给塔台,为了飞机位置的精准度,传输位置的密度很大,在地图位置显示不明显。本次为了案例展示效…...
手机容器化 安装docker
旧手机-基于Termux容器化 1、安装app 在手机上安装Termux或ZeroTermux(Termux扩展) 1.1 切换源 注:可以将termux进行换源,最好采用国内源,例如:清华源等 更新包列表和升级包(可选࿰…...
科普文:深入理解Mybatis
概叙 (1) JDBC JDBC(Java Data Base Connection,java数据库连接)是一种用于执行SQL语句的Java API,可以为多种关系数据库提供统一访问,它由一组用Java语言编写的类和接口组成.JDBC提供了一种基准,据此可以构建更高级的工具和接口,使数据库开发人员能够编写数据库应用程序。 优点…...
称重传感器有哪些种类
有关称重传感器的知识,称重传感器是众多传感器产品中的一种,也是很常用的传感器之一,那么称重传感器有哪些种类,称重传感器的分类方式是什么样的,一起来了解下。 称重传感器的分类 主要有六种称重传感器类型…...
程序员鱼皮的保姆级写简历指南第四弹,优秀简历参考
大家好,我是程序员鱼皮。做知识分享这些年来,我看过太多简历、也帮忙修改过很多的简历,发现很多同学是完全不会写简历的、会犯很多常见的问题,不能把自己的优势充分展示出来,导致措施了很多面试机会,实在是…...
UML建模案例分析-时序图和类图的对应关系
概念 简单地说,类图定义了系统中的对象,时序图定义了对象之间的交互。 例子 一个电子商务系统,会员可通过电子商务系统购买零件。具体功能需求如下: 会员请求结账时,系统验证会员的账户是否处于登录状态࿱…...
Java版Flink使用指南——从RabbitMQ中队列中接入消息流
大纲 创建RabbitMQ队列新建工程新增依赖编码设置数据源配置读取、处理数据完整代码 打包、上传和运行任务测试 工程代码 在《Java版Flink使用指南——安装Flink和使用IntelliJ制作任务包》一文中,我们完成了第一个小型Demo的编写。例子中的数据是代码预先指定的。而…...
Python酷库之旅-第三方库Pandas(013)
目录 一、用法精讲 31、pandas.read_feather函数 31-1、语法 31-2、参数 31-3、功能 31-4、返回值 31-5、说明 31-6、用法 31-6-1、数据准备 31-6-2、代码示例 31-6-3、结果输出 32、pandas.DataFrame.to_feather函数 32-1、语法 32-2、参数 32-3、功能 32-4、…...
Linux 高级 Shell 脚本编程:掌握 Shell 脚本精髓,提升工作效率
【Linux】 高级 Shell 脚本编程:掌握 Shell 脚本精髓,提升工作效率 Shell 脚本编程是 Linux 系统管理员和开发人员的必备技能。通过学习高级 Shell 脚本编程,你可以编写更高效、更灵活和更易于维护的脚本。本文将介绍 Shell 脚本编程中的函数…...
【ARMv8/v9 GIC 系列 1.5 -- Enabling the distribution of interrupts】
请阅读【ARM GICv3/v4 实战学习 】 文章目录 Enabling the distribution of interruptsGIC Distributor 中断组分发控制CPU Interface 中断组分发控制Physical LPIs 的启用Summary Enabling the distribution of interrupts 在ARM GICv3和GICv4体系结构中,中断分发…...
《mysql篇》--索引事务
索引 索引的介绍 索引是帮助MySQL高效获取数据的数据结构,是一种特殊的文件,包含着对数据表里所有记录的引用指针,因为索引本身也比较大,所以索引一般是存储在磁盘上的,索引的种类有很多,不过如果没有特殊…...
科研绘图系列:R语言STAMP图(STAMP Plot)
介绍 STAMP图(STAMP plot)并非一个广泛认知的、具有特定名称的图表类型,而是可能指在STAMP(Statistical Analysis of Metagenomic Profiles:“STAMP: statistical analysis of taxonomic and functional profiles”)软件使用过程中生成的各种统计和可视化图表的总称。ST…...
【机器视觉】单目测距——运动结构恢复
ps:图是随便找的,为了凑个封面 前言 在前面对光流法进行进一步改进,希望将2D光流推广至3D场景流时,发现2D转3D过程中存在尺度歧义问题,需要补全摄像头拍摄图像中缺失的深度信息,否则解空间不收敛…...
学校招生小程序源码介绍
基于ThinkPHPFastAdminUniApp开发的学校招生小程序源码,专为学校招生场景量身打造,功能实用且操作便捷。 从技术架构来看,ThinkPHP提供稳定可靠的后台服务,FastAdmin加速开发流程,UniApp则保障小程序在多端有良好的兼…...
Swagger和OpenApi的前世今生
Swagger与OpenAPI的关系演进是API标准化进程中的重要篇章,二者共同塑造了现代RESTful API的开发范式。 本期就扒一扒其技术演进的关键节点与核心逻辑: 🔄 一、起源与初创期:Swagger的诞生(2010-2014) 核心…...
【开发技术】.Net使用FFmpeg视频特定帧上绘制内容
目录 一、目的 二、解决方案 2.1 什么是FFmpeg 2.2 FFmpeg主要功能 2.3 使用Xabe.FFmpeg调用FFmpeg功能 2.4 使用 FFmpeg 的 drawbox 滤镜来绘制 ROI 三、总结 一、目的 当前市场上有很多目标检测智能识别的相关算法,当前调用一个医疗行业的AI识别算法后返回…...
大数据学习(132)-HIve数据分析
🍋🍋大数据学习🍋🍋 🔥系列专栏: 👑哲学语录: 用力所能及,改变世界。 💖如果觉得博主的文章还不错的话,请点赞👍收藏⭐️留言Ǵ…...
Mysql中select查询语句的执行过程
目录 1、介绍 1.1、组件介绍 1.2、Sql执行顺序 2、执行流程 2.1. 连接与认证 2.2. 查询缓存 2.3. 语法解析(Parser) 2.4、执行sql 1. 预处理(Preprocessor) 2. 查询优化器(Optimizer) 3. 执行器…...
比较数据迁移后MySQL数据库和OceanBase数据仓库中的表
设计一个MySQL数据库和OceanBase数据仓库的表数据比较的详细程序流程,两张表是相同的结构,都有整型主键id字段,需要每次从数据库分批取得2000条数据,用于比较,比较操作的同时可以再取2000条数据,等上一次比较完成之后,开始比较,直到比较完所有的数据。比较操作需要比较…...
掌握 HTTP 请求:理解 cURL GET 语法
cURL 是一个强大的命令行工具,用于发送 HTTP 请求和与 Web 服务器交互。在 Web 开发和测试中,cURL 经常用于发送 GET 请求来获取服务器资源。本文将详细介绍 cURL GET 请求的语法和使用方法。 一、cURL 基本概念 cURL 是 "Client URL" 的缩写…...
uniapp 集成腾讯云 IM 富媒体消息(地理位置/文件)
UniApp 集成腾讯云 IM 富媒体消息全攻略(地理位置/文件) 一、功能实现原理 腾讯云 IM 通过 消息扩展机制 支持富媒体类型,核心实现方式: 标准消息类型:直接使用 SDK 内置类型(文件、图片等)自…...
大数据治理的常见方式
大数据治理的常见方式 大数据治理是确保数据质量、安全性和可用性的系统性方法,以下是几种常见的治理方式: 1. 数据质量管理 核心方法: 数据校验:建立数据校验规则(格式、范围、一致性等)数据清洗&…...



