Linux的基本指令(四)

news2024/11/27 16:45:47

目录

前言

时间相关的指令

date指令

时间戳

日志

时间戳转化为具体的时间

cal指令

find指令(十分重要)

grep指令(行文本过滤工具)

学前补充

什么是打包和压缩?

为什么要打包和压缩?

怎么打包和压缩?

zip/unzip指令


前言

怎么还要再写一篇啊🤡🐆🐍🦖🐓🦅🐡🐠🦋🐥......

时间相关的指令

date指令

语法:date [选项] [+格式]
功能: 显示或设置系统的日期和时间
常用选项:
  • -s:设置当前系统日期

常用格式占位符:

  • %Y: 四位数年份(例如:2023)
  • %m: 两位数月份(01 到 12)
  • %d: 两位数天数(01 到 31)
  • %H: 小时,24 小时制(00 到 23)
  • %M: 分钟(00 到59)
  • %S: 秒钟 (00 to59)
常见使用方式:
在显示时间方面:
1、date ,显示当前系统日期:

2、date +%Y-%m-%d,使用特定格式显示当前系统日期:

3、date +%Y-%m-%d_%H:%M:%S使用特定格式更详细的显示当前系统日期:

在设置时间方面:

  • date -s //设置当前时间,只有root权限才能设置,其他只能查看
  • date -s 20080523:只更改系统日期为20080523,系统时间仍为00:00:00
  • date -s 01:01:01:只更改系统时间为01:01:01,系统日期仍为当前日期
  • date -s “2008-05-23 01:01:01″:可以设置全部时间
关于系统日期和系统时间:
1、系统日期(System Date)指年、月、日这一部分,用于表示当天的日期
2、 系统时间(System Time)指小时、分钟和秒数等部分,用于表示一天中的具体时刻

时间戳

        关于时间戳的内容不再过多叙述,我们只需要知道它是一个逐秒递增的数字,它以 1970 年 1 月 1 日 UTC 时间午夜 (00:00:00) 开始,并按秒递增来表示当前时刻与该起始点之间经过了多少秒,通俗来讲就是当前时间与1970年1月1日0时0分0秒之间的秒数的差值。

日志

        日志在时间中起着重要的作用。它记录了事件发生的时间戳和相关信息,可以帮助我们跟踪、分析和排查问题。以下是日志在时间中的几个方面作用:

  1. 调试和故障排除:当应用程序出现问题时,记录详细的调试信息到日志文件中可以帮助定位问题所在。通过查看相关错误消息、异常堆栈跟踪以及其他有用信息,可以追踪代码执行路径并找到导致错误或异常情况的原因

  2. 监控和性能优化:通过记录关键指标(如请求处理时间、数据库查询时间等)以及系统状态(如内存使用量、CPU负载等)到日志文件中,可以进行系统性能监控和分析。这些信息有助于找出潜在瓶颈,并采取相应措施来改进系统性能。

  3. 安全审计与合规性:对于安全敏感的应用程序或需要满足特定合规标准(如GDPR)的场景,记录用户活动、访问权限变更以及其他安全事件至关重要。这些安全审计日志可作为调查工具,并确保符合法律法规要求。

  4. 用户行为分析与产品改进:通过记录用户行为、用户界面交互以及其他与用户相关的信息,可以进行用户行为分析和产品改进。这些日志可用于了解用户需求、发现潜在问题或改善产品功能。

时间戳转化为具体的时间

        在日志中,记录具体时间通常使用时间戳的形式是一种常见做法,但是我们该如何将时间戳转换为可以看的懂的具体时间呢?我们只需要利用date +格式 -d @时间戳的形式就可以将时间戳以我们想要的格式显示出来:

如果将时间戳设置为0呢?

为什么是08:00:00而不是00:00:00?这是因为我国的标准时间比格林威治时间早八个小时...

cal指令

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

功能:查看日历等时间信息,只有一个参数则表示年份(1-9999),有两个参数则表示月份和年份

常用选项:

  • -3:显示系统前一个月,当前月,下一个月的月历
  • -j:显示在当年中的第几天(一年日期按天算,从11号算起,默认显示当前月在一年中的天数)
  • -y:显示当前年份的日历

常见使用方式:

1、cal -3,显示最近三个月的日历:

2、cal -j,显示今天是今年的第几天:

3、cal -j 26 11 2023,显示2023年11月26日在当年是第几天(不再展示,知道如何使用即可)

4、cal -y,显示当前年份的日历: 

 5、cal -y 5 120,显示120年5月的日历(不再展示,知道如何使用即可)


find指令(十分重要)

语法:find 目录名 [选项] 文件名

功能:用于在指定目录下查找文件,并作出相应的处理(可能访问磁盘)

常用选项:(一些常用选项暂未列出,后续会进行补充)

  • -name:按照文件名查找文件
  • -empty:查找空文件
  • -size:查找指定大小的文件

常见使用方式:

1、find /root -name *.c,在root目录下查找以.c结尾的文件:

2、find /root -size +1k,在root目录下查找小于1000字节大小的文件(.和..不是文件):
3、find /root -empty,在root目录下查找空文件:


grep指令(行文本过滤工具)

语法:grep [选项] "搜寻字符串" 文件名

功能:在文件中搜索字符串,将含有该字符串的行打印

常用选项:

  • -i :忽略大小写的不同,所以大小写视为相同
  • -n :顺便输出行号
  • -v :反向选择,亦即显示出没有 '搜寻字符串' 内容的那一行

常见使用方式:

1、grep "999"  output.txt,将output.txt文件中包含999的行都打印出来:

2、ps ajx | grep ”bash“ ,将进程(后续会写)中含bash的内容打印出来:

3、grep -n "bit" simple.txt,打印simple.txt文件中包含bit字符串的行以及它们的行号:

4、grep  -i “bit” simple.txt,忽略simple.txt文件中bit的大小写,将包含大写的bit也打印:

5、 grep -v “bit” simple.txt,将simple.txt文件中不含bit的行打印(加了点私货):


学前补充

什么是打包和压缩?

打包(Packaging)和压缩(Compression)是两个相关但不完全相同的概念

        打包将多个文件或目录组合成一个单一的文件或目录结构的过程。它可以将相关文件放置在一起以便更方便地进行传输、存储或共享。打包通常会保留原始文件的结构,并创建一个容器(如压缩归档格式、文件夹等),其中可以包含多个文件和子目录。

        压缩则是通过使用特定算法来减小数据量,从而降低所占用空间大小的过程。它通过消除冗余信息和应用数据压缩技术来实现。压缩后生成的新文件称为压缩档案,其大小通常比原始数据要小得多。

为什么要打包和压缩?

  1. 节省存储空间:通过将多个文件或目录进行打包和/或压缩,可以节省磁盘空间,并提高存储效率。尤其对于大型项目、备份数据等情况下,这种节省非常重要。

  2. 方便传输:当需要将大量数据发送给他人时,使用打包和/或压缩可以减少传输时间并降低带宽要求。压缩后的文件更小,传输速度更快。

  3. 组织和管理文件:打包可以将相关文件组织在一起,形成一个单独的实体,方便进行整体管理、备份和共享。同时也有助于保持目录结构的完整性。

  4. 提高性能:对于某些需要频繁读取或写入数据的应用程序,使用压缩数据可以减少磁盘I/O操作,并提高系统性能。

怎么压缩/打包和解压缩/包?

  1. 使用zip指令和unzip指令进行压缩和解压缩
  2. 使用tar指令实现打包和解包

zip和unzip指令

语法:zip [选项] 压缩文件.zip 目录或文件

功能:将目录或文件压缩成zip格式

常用选项:

  • -r 递归处理,将指定目录下的所有文件和子目录一并处理

常见使用方式:

1、zip -r 自定义压缩文件名.zip 文件/目录名,将111目录中的文件递归压缩,如果不采用递归压缩则只会将目录名压缩,可以看到zip -r 111.zip 111 和 zip 111.zip 111两者执行后压缩的内容前者明显比后者多了四个文件:

2、unzip 压缩文件,将压缩文件解压:

若不存在unzip指令,则需要使用yum -y install unzip 下载该指令 

~over~

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

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

相关文章

【洛谷算法题】P5715-三位数排序【入门2分支结构】

👨‍💻博客主页:花无缺 欢迎 点赞👍 收藏⭐ 留言📝 加关注✅! 本文由 花无缺 原创 收录于专栏 【洛谷算法题】 文章目录 【洛谷算法题】P5715-三位数排序【入门2分支结构】🌏题目描述🌏输入格式…

基于OGG实现MySQL实时同步

📢📢📢📣📣📣 哈喽!大家好,我是【IT邦德】,江湖人称jeames007,10余年DBA及大数据工作经验 一位上进心十足的【大数据领域博主】!😜&am…

常见树种(贵州省):020女贞、异叶梁王茶、掌叶梁王茶、鹅掌柴、楤木、柞木、华重阳木、马蹄荷、山桐子、刺楸

摘要:本专栏树种介绍图片来源于PPBC中国植物图像库(下附网址),本文整理仅做交流学习使用,同时便于查找,如有侵权请联系删除。 图片网址:PPBC中国植物图像库——最大的植物分类图片库 一、女贞 …

我的创作纪念日-五周年

机缘 5年前,作为一名技术人员,平时利用CSDN作为学习平台工具,帮助解决工作中遇到的问题。随着30、35中年危机渐行渐近,回过头来发现平时虽然也有记录整理学习笔记的习惯,但还没有一个可以持续鞭笞自己和记录自己学习的…

C#,数值计算——插值和外推,RBF_fn 与 RBF_gauss 的计算方法与源程序

1 文本格式 using System; namespace Legalsoft.Truffer { public interface RBF_fn { double rbf(double r); } } ---------------------------------------------- using System; namespace Legalsoft.Truffer { public class RBF_gauss : RBF…

transformers pipeline出现ConnectionResetError的解决方案

大家好,我是爱编程的喵喵。双985硕士毕业,现担任全栈工程师一职,热衷于将数据思维应用到工作与生活中。从事机器学习以及相关的前后端开发工作。曾在阿里云、科大讯飞、CCF等比赛获得多次Top名次。现为CSDN博客专家、人工智能领域优质创作者。喜欢通过博客创作的方式对所学的…

上海亚商投顾:北证50指数大涨 逾百只北交所个股涨超10%

上海亚商投顾前言:无惧大盘涨跌,解密龙虎榜资金,跟踪一线游资和机构资金动向,识别短期热点和强势个股。 一.市场情绪 沪指11月24日震荡调整,深成指、创业板指盘中跌超1%。北证50指数大涨超6%,北交所个股持…

[架构之路-253]:目标系统 - 设计方法 - 软件工程 - 软件设计 - 结构化设计的主要评估指标:高内聚(模块内部)、低耦合(模块之间)的含义

目录 前言: 一、软件工程中的软件设计种类:根据宏观到微观分 (1)软件架构设计(层次划分、模块划分、职责分工): (2)软件高层设计、概要设计(功能模块的接…

[设计模式] 常见的设计模式

文章目录 设计模式的 6 大设计原则设计模式的三大分类常见的设计模式有哪几种1. 单例模式:保证一个类仅有一个实例,并提供一个访问它的全局访问点。(连接池)1. 饿汉式2. 懒汉式3. 双重检测 2. 工厂模式3. 观察者模式● 推模型● 拉…

Windows上常用的dos命令

cd更改目录 cd c:\users从其他目录改成c:\users。 type显示文件内容 type good.txt显示文件good.txt里边的内容。 del删除文件 del good.txt删除文件。

(C++)string类的模拟实现

愿所有美好如期而遇 前言 我们模拟实现string类不是为了去实现他,而是为了了解他内部成员函数的一些运行原理和时间复杂度,在将来我们使用时能够合理地去使用他们。 为了避免我们模拟实现的string类与全局上的string类冲突(string类也在std命名空间中)&…

Redis序列化操作

目录 1.protostuff 的 Maven 依赖 2.定义实体类 3.序列化工具类 ProtostuffSerializer 提供了序列化和反序列化方法 4.测试 利用 Jedis 提供的字节数组参数方法,如: public String set(String key, String value) public String set(byte[] key…

【Springboot系列】SpringBoot整合WebSocket,既然如此简单(含源码)

文章目录 前言:什么是WebSocket?Spring Boot中的WebSocket支持WebSocket和HTTP优劣势WebSocket的优势:1.实时性:2.较低的延迟:3.较小的数据传输量:4.更好的兼容性: HTTP的优势:1.简单…

HDMI接口信号流向及原理图分析

1、HDMI的来源及发展 如今显示器上最常用的接口无非HDMI(High Definition Multimedia Interface)与DP(DisplayPort)两种,VGA与DVI已经很少使用,原因在于VGA传输的是模拟信号,在发送端需要将数字…

如果客户端同时有ipv4和ipv6,浏览器是如何选择用哪种ip

在互联网协议(IP)的发展历程中,IPv4和IPv6是两种主要的版本。对于一个客户端来说,同时拥有IPv4和IPv6的能力是常见的情况。那么,当一个客户端同时具有IPv4和IPv6的能力时,浏览器是如何选择使用哪种IP进行通…

数组栈的实现

1.栈的概念及结构 栈:一种特殊的线性表,其只允许在固定的一端进行插入和删除元素操作 进行数据插入和删除操作的一端称为栈顶,另一端称为栈底 栈中的数据元素遵守后进先出LIFO,(Last In First Out)的原则 压栈&…

Redis-Redis多级缓存架构

多级缓存架构 缓存设计 缓存穿透 缓存穿透是指查询一个根本不存在的数据, 缓存层和存储层都不会命中, 通常出于容错的考虑, 如果从存储层查不到数据则不写入缓存层。 缓存穿透将导致不存在的数据每次请求都要到存储层去查询, 失…

NX二次开发UF_CURVE_ask_offset_parms 函数介绍

文章作者:里海 来源网站:https://blog.csdn.net/WangPaiFeiXingYuan UF_CURVE_ask_offset_parms Defined in: uf_curve.h int UF_CURVE_ask_offset_parms(tag_t offset_curve_object, UF_CURVE_offset_data_p_t offset_data_pointer ) overview 概述 …

从0开始学习JavaScript--JavaScript中的对象原型

JavaScript中的对象原型是理解该语言核心概念的关键之一。本文将深入探讨JavaScript对象原型的作用、使用方法以及与继承相关的重要概念。通过详细的示例代码和全面的讲解,将能够更好地理解和运用JavaScript对象原型,提高代码的可维护性和扩展性。 Java…

windows下docker环境搭建与运行实战

背景 学习docker使用,需要环境,今天主要的目标是在windows环境下安装docker环境。 为什么要这么搞,主要是企业内部服务器,都是跟公网隔离的,没有访问公网权限,所以镜像什么的,从公网拉取完全没…