当前位置: 首页 > news >正文

Linux系统编程学习 NO.4 ——基础指令学习、操作系统时间的概念、文件压缩包的概念

1.时间相关的概念以及指令

1.1.时间相关的指令

1.1.1.date指令

date可以指定时间显示的格式:date +指定格式
选项

%H:小时
%M:分钟
%S:秒数
%Y:年份
%m:月份
%d:日
%F:相当于%Y-%m-%d
%X:相当%H:%M:%S

1.1.2.操作演示

date +%Y_%m_%d-%H:%M:%S
date +%F_%X

在这里插入图片描述

1.2.日志的概念

检查日志是程序员日常规工作中需要查看维护的一项工作。日志其实就是电脑以特点格式编写的日记。日志有三大部分组成,分别是时间、日志等级、日志具体信息。时间是计算机世界中的一个重要的概念。下面介绍的时间戳中还会有介绍,这里重点介绍日志。日志是用于记录应用程序、操作系统等计算机领域中的活动,主要用于故障排查、性能分析、安全审计等。

1.3.时间戳的概念

时间戳是指一个特定事件发生的日期和时间,通常以某种标准格式表示,比如UNIX时间戳,它是从1970年1月1日00:00:00 UTC(协调世界时)开始的秒数。时间戳通常用于记录事件发生的时间,以便在需要时能够准确地追踪或记录事件的时间顺序。时间戳也可以用于验证数据的完整性和时效性,因为每个事件都有一个唯一的时间戳。

1.3.1.时间戳查看指令

date +%s  查看当前时间戳

在这里插入图片描述
那要如何转换成年月日时分秒的格式呢?下面介绍两种将时间戳转化成我们常用的时间格式的指令。

date -d @时间戳  默认格式
date +%F_%X -d @时间戳  指定格式

在这里插入图片描述在这里插入图片描述

1.3.2.时间戳的趣谈

相信学过编程语言的朋友可以会了解数据溢出带来的问题。如有符号类型正数数据溢出后,会变成负数的问题。这里浅谈一下千年虫问题。千年虫问题是指在1999年到2000年之间,由于早期计算机普遍采用的只有两位数来表示年份,因此当年份从99变成00时,可能会导致计算机系统无法正确识别时间日期,从而引发各种问题。这个问题被广泛讨论和预测,但最终并没有像人们预想的那样对计算机系统造成灾难性的影响。当然现有的时间戳体系也是会有溢出的一天,但是,我相信解决问题一定是会在问题出现之前就完成的。

1.4.cal指令

cal指令用于显示公历。

语法
cal[参数][月份][年份]

补充:如果只有一个参数,则表示年份(1-9999),如果有两个参数,则表示月份和年份。
常见选项

-3:显示系统当前月日历、前一个月份日历、后一个月份日历。
-j:显示在当年中的第几天(默认显示当前月在一年中的天数)
-y:显示当前年份的日历

1.4.1.操作演示

在这里插入图片描述

在这里插入图片描述

2.查找指令

2.1.find指令(重要)

find指令是Linux下在目录结构中搜索文件,并执行制定操作的查找文件的命令。find命令可以有相当多的查找条件,功能很强大。因为选项众多且大部分都值得我们花时间了解。这里我只是简单的介绍。后续还会继续介绍find指令在一些场景下的使用。

语法

find 指定路径 指定选项

常用选项

-name 按照文件名查找

2.1.1.样例演示

find ~ -empty
find ~ -size -1024

在这里插入图片描述

2.2 which指令和whereis指令

which指令用于查找指令在系统中的位置。whereis用于在系统指定路径下查找,既可以查找可执行程序、安装包、压缩包等等。

语法

which -选项 指令
where -选项 指令/手册名等

2.2.1.样例演示

which ls
whereis stdlib.h

在这里插入图片描述

3.grep指令

在指定文件中搜索字符串,将找到的行打印出来

语法

grep [选项] [要搜索的字符串]

常用选项

-n:显示匹配行的行号
-i:忽略字母地大小写
-v:显示不匹配的行

3.1.样例演示

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

3.2.服务端和客户端的概念

我们手机上、电脑上装的app其实本质上都是属于客户端,而我们在使用云服务器学习Linux时,我们ssh登录的就是由云服务器厂商提供的服务端。sshd就是安装在服务器上的用于验证我们ssh登录信息的系统软件。而我们在平时刷到短视频,通过网络向短视频应用厂商的服务端申请了服务,服务端响应后,在我们的客户端上就有我们喜欢的短视频内容了。
在这里插入图片描述

4.Linux下打包压缩与解压的指令介绍

4.1.打包压缩解压解包的概念

打包压缩是将多个文件或者文件夹打包成一个压缩文件,以减小文件大小、节省存储空间,同时方便传输和备份。常见的打包压缩格式有zip、rar、tar、7z等。解压解包则是将压缩文件恢复成原始的文件和文件夹。解压后的文件可以像未压缩的文件一样使用和操作。举一个在生活中的案例。在我们刚上大学的时候,很多同学都是第一次离开自己的家。在开学前一两天,父亲给你卖了一个很大的行李箱,并将你的生活用品都打包好了。这就是打包。这是母亲一看,哎这装的是啥啊?于是乎呢,她就将东西按照合理的空间顺序进行摆放。毛巾就塞到牙缸中,杯子也装到真空袋中,将空气压走。原本只能装10公斤的行李箱,在母亲的一顿操作下,硬是装了15公斤的东西。这就是解压。那么可能你会有一个疑问。我们呢就背着行李高高兴兴地去上大学了。到了学校宿舍后,将行李箱物品拿出来,这就叫解压。将物品按照规则摆放好,这就叫做解包。那么就引出一个疑问,为什么要有打包和压缩呢?事实上,在日常的网络下载软件的时候,通常我们都是下载的厂商服务端给我们提供的压缩包,因为在网络传输中,有可能会有一些不稳定的情况造成了文件的缺失。将文件压成一个包,传输的话要不然就是传输失败,要么就是传输成功,这样避免了文件丢失的尴尬。而且,打包压缩可以是存储的空间更小,在网络中传输的时间更快。

4.2.zip指令和unzip指令的介绍

zip指令功能:打包和压缩文件
语法

zip 压缩文件名 目录或文件

常用选项

-r:递归处理,将指定目录下的文件和子目录一并打包压缩

unzip指令功能:解压压缩文件
语法

unzip 压缩包

4.3.zip指令和unzip指令的样例演示

在这里插入图片描述

4.4.tar指令的介绍

tar指令可以压缩、解压、查看压缩文件信息等
语法

tar [选项] [文件] [参数]

常用选项

-c:建立一个压缩文件
-z:以gzip算法形式进行对压缩包的操作
-f:使用档名,请留意,在 f 之后要立即接档名
-x :解开一个压缩文件
-t :查看 tarfile 里面的文件
-v :压缩的过程中显示文件

4.5.tar命令的样例演示

5.bc指令

Linux下的计算器

样例演示

在这里插入图片描述

6.uname指令

uname用来获取电脑和操作系统的相关信息
语法

uname 选项

常用选项

-a:查看计算机的详细信息
-r:用于显示系统内核的版本号

6.1.样例演示

在这里插入图片描述

在这里插入图片描述

相关文章:

Linux系统编程学习 NO.4 ——基础指令学习、操作系统时间的概念、文件压缩包的概念

1.时间相关的概念以及指令 1.1.时间相关的指令 1.1.1.date指令 date可以指定时间显示的格式:date 指定格式 选项 %H:小时 %M:分钟 %S:秒数 %Y:年份 %m:月份 %d:日 %F:相当于%Y-%m-%d %X:相当…...

leecode 数据库:601. 体育馆的人流量

导入数据: Create table If Not Exists Stadium (id int, visit_date DATE NULL, people int); Truncate table Stadium; insert into Stadium (id, visit_date, people) values (1, 2017-01-01, 10); insert into Stadium (id, visit_date, people) values (2, 20…...

gym不渲染画面的解决方案(gym版本号0.26.2)

确认gym版本号 我安装了新版gym,版本号是0.26.2,不渲染画面的原因是,新版gym需要在初始化env时新增一个实参render_mode‘human’,并且不需要主动调用render方法,官方文档入门教程如下 import gym import numpy as n…...

如何在 Fedora 37 上安装 FileZilla?

FileZilla 是一款流行的开源 FTP(文件传输协议)客户端,它提供了一个直观的界面来管理和传输文件。本文将详细介绍如何在 Fedora 37 上安装 FileZilla。以下是安装过程的详细步骤: 步骤一:更新系统 在安装任何软件之前…...

网终安全技术(刘化君)课后被略的答案

目录 8.HTTP客户机与Wb服务器通信通常会泄露哪些信息? 9.在TCP连接建立的3次握手阶段,攻击者为什么可以成功实施SYN Flood攻击?在实际中,如何防范此类攻击? 常用的网络漏洞扫描技术有哪几种?试举例说明。…...

架构思想之DDD

领域驱动设计(Domain-Driven Design,简称DDD)是一种架构思想,旨在通过将业务问题领域化,将业务逻辑放在核心领域中,以实现更好的软件设计和可维护性。下面将介绍如何实现DDD的Java实现,包括如何…...

FinClip | 2023 年 4 月产品大事记

我们的使命是使您(业务专家和开发人员)能够通过小程序解决您的关键业务流程挑战。不妨让我们看看在本月的产品与市场发布亮点,看看它们如何帮助您实现目标。 产品方面的相关动向👇👇👇 全新版本的小程序统…...

试论什么是圣人境界

人类进化方向就是不断的提高智力。鼓吹体力都是反人类。 圣人是人类能够达到的最高境界,再上一层就是神了。按照中华传统,说圣人就是神也是正确的。 圣人境界是什么样子的?在这一点上,孔子给予了答案:吾道一以贯之。掌…...

在外远程登录局域网下的象过河ERP管理系统,无需公网IP

文章目录 概述1.查看象过河服务端端口2.内网穿透3. 异地公网连接4. 固定公网地址4.1 保留一个固定TCP地址4.2 配置固定TCP地址 5. 使用固定地址连接 转发自CSDN远程穿透的文章:公网远程访问公司内网象过河ERP系统「内网穿透」 概述 ERP系统对于企业来说重要性不言而…...

golang 服务中 context 超时处理的思考

文章目录 前言起因:日志告警引发的思考什么是contextcontext的作用context超时之后继续执行 or 中断 最后 前言 公司运行的服务代码中,随处可见各种各样的日志信息,其中大多数是用来记录各种异常的日志,一方面,当出现…...

遇到Uniapp配置meta不生效怎么解决

Uniapp是一种基于 Vue.js 的跨平台应用开发框架,其开发简单、易上手,可以快速构建出 iOS、Android 和 H5 页面,成为现在移动应用开发的重要工具之一。然而,跨平台应用的开发也带来了一些问题,比如本文即是解决 uniapp …...

C语言基础知识:位与位字段

目录 位与字节 位 比特 字节 对齐特性 位字段 位与字节 位 二进制数系统中,每个0或1就是一个位(bit),位是数据存储的最小单位。其中8 bit就称为一个字节(Byte)。计算机中的CPU位数指的是CPU一次能处理的最大位数&#xff0…...

新版android studio gradle插件7.4.2.pom一直无法下载问题

android studio同步时候出现org.gradle.api.plugins.UnknownPluginException,Plugin [id: com.android.application, version: 7.4.2] was not found in any of the following sources: pom插件一直无法下载,搞了好几天,简直想砸电脑&#x…...

Shell——变量和引用

1.总结变量的类型及含义? 2.实现课堂案例计算长方形面积?(6种方式) 3.定义变量urlhttps://blog.csdn.net/weixin_45029822/article/details/103568815 (通过多种方法实现) 1)截取网站访问的协…...

实际开发中一些实用的JS数据处理方法

写在开头 JavaScript 是一种脚本语言,最初是为了网页提供交互式前端功能而设计的,而现在,通过 Node.js,JavaScript 还可以用于编写服务器端代码。 JavaScript 具有动态性、基于原型的面向对象特性、弱类型、多范式、支持闭包执行…...

10:00进去,10:05就出来了,这问的也太变态了···

从外包出来,没想到死在另一家厂子了。 自从加入这家公司,每天都在加班,钱倒是给的不少,所以也就忍了。没想到5月一纸通知,所有人不许加班,薪资直降30%,顿时有吃不起饭的赶脚。 好在有个兄弟内推…...

GPT时代,最令人担心的其实是“塔斯马尼亚效应”

目录 教育到底教什么? 过度依赖GPT可能导致文明退化 GPT可以帮助人类破解“学海无涯极限”悖论 春季学期伊始,全球各地的老师们如临大敌,因为学生们带着ChatGPT杀过来了。Study.com的调研显示,每10个学生中就有超过9个知道Chat…...

基于容器技术和服务发现的全新大数据平台弹性伸缩方法

随着科技的不断发展,各个行业都在不断地数字化和智能化。在这个过程中,大数据技术成为了许多行业的重要支撑。而随着大数据技术的普及,行业分类和设备装置的不断更新换代,弹性伸缩成为了一个不可避免的问题。本文将介绍基于服务发…...

php8 match

刚从 php7 升级到 php8 时 我在使用 switch 语句,结果出现了一个提示: "switch statement can be converted to match expression" 翻译过来就是: switch语句可以转换为match表达式 我当时在想,match 应该是php8 的…...

ADS-B接收机Radarcape

1.设备简介 Radarcape是一款便携、高性能、功能强大的ADS-B地面接收机。Radarcape的设备清单包含:ADS-B接收机主机,专业级ADS-B天线,GPS天线,电源线,网线。 2. 功能特点 Radarcape可以通过网口输出飞机的原始数据D…...

网络六边形受到攻击

大家读完觉得有帮助记得关注和点赞!!! 抽象 现代智能交通系统 (ITS) 的一个关键要求是能够以安全、可靠和匿名的方式从互联车辆和移动设备收集地理参考数据。Nexagon 协议建立在 IETF 定位器/ID 分离协议 (…...

【HarmonyOS 5.0】DevEco Testing:鸿蒙应用质量保障的终极武器

——全方位测试解决方案与代码实战 一、工具定位与核心能力 DevEco Testing是HarmonyOS官方推出的​​一体化测试平台​​,覆盖应用全生命周期测试需求,主要提供五大核心能力: ​​测试类型​​​​检测目标​​​​关键指标​​功能体验基…...

CocosCreator 之 JavaScript/TypeScript和Java的相互交互

引擎版本: 3.8.1 语言: JavaScript/TypeScript、C、Java 环境:Window 参考:Java原生反射机制 您好,我是鹤九日! 回顾 在上篇文章中:CocosCreator Android项目接入UnityAds 广告SDK。 我们简单讲…...

Spring AI与Spring Modulith核心技术解析

Spring AI核心架构解析 Spring AI(https://spring.io/projects/spring-ai)作为Spring生态中的AI集成框架,其核心设计理念是通过模块化架构降低AI应用的开发复杂度。与Python生态中的LangChain/LlamaIndex等工具类似,但特别为多语…...

Mac下Android Studio扫描根目录卡死问题记录

环境信息 操作系统: macOS 15.5 (Apple M2芯片)Android Studio版本: Meerkat Feature Drop | 2024.3.2 Patch 1 (Build #AI-243.26053.27.2432.13536105, 2025年5月22日构建) 问题现象 在项目开发过程中,提示一个依赖外部头文件的cpp源文件需要同步,点…...

10-Oracle 23 ai Vector Search 概述和参数

一、Oracle AI Vector Search 概述 企业和个人都在尝试各种AI,使用客户端或是内部自己搭建集成大模型的终端,加速与大型语言模型(LLM)的结合,同时使用检索增强生成(Retrieval Augmented Generation &#…...

A2A JS SDK 完整教程:快速入门指南

目录 什么是 A2A JS SDK?A2A JS 安装与设置A2A JS 核心概念创建你的第一个 A2A JS 代理A2A JS 服务端开发A2A JS 客户端使用A2A JS 高级特性A2A JS 最佳实践A2A JS 故障排除 什么是 A2A JS SDK? A2A JS SDK 是一个专为 JavaScript/TypeScript 开发者设计的强大库&#xff…...

C/C++ 中附加包含目录、附加库目录与附加依赖项详解

在 C/C 编程的编译和链接过程中,附加包含目录、附加库目录和附加依赖项是三个至关重要的设置,它们相互配合,确保程序能够正确引用外部资源并顺利构建。虽然在学习过程中,这些概念容易让人混淆,但深入理解它们的作用和联…...

[免费]微信小程序问卷调查系统(SpringBoot后端+Vue管理端)【论文+源码+SQL脚本】

大家好,我是java1234_小锋老师,看到一个不错的微信小程序问卷调查系统(SpringBoot后端Vue管理端)【论文源码SQL脚本】,分享下哈。 项目视频演示 【免费】微信小程序问卷调查系统(SpringBoot后端Vue管理端) Java毕业设计_哔哩哔哩_bilibili 项…...

MySQL JOIN 表过多的优化思路

当 MySQL 查询涉及大量表 JOIN 时,性能会显著下降。以下是优化思路和简易实现方法: 一、核心优化思路 减少 JOIN 数量 数据冗余:添加必要的冗余字段(如订单表直接存储用户名)合并表:将频繁关联的小表合并成…...