Linux的基本指令(四)

目录

前言

时间相关的指令

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.mzph.cn/news/172695.shtml

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

相关文章

【数据结构】二叉树oj题

在处理oj题之前我们需要先处理一下之前遗留的问题 在二叉树中寻找为x的节点 BTNode* BinaryTreeFind(BTNode* root, int x) {if (root NULL)return NULL;if (root->data x)return root;BTNode* ret1 BinaryTreeFind(root->left, x);BTNode* ret2 BinaryTreeFind(ro…

Windows系统下更新后自带的画图软件出现马赛克bug

一.bug的样子🍗 在使用橡皮后,原来写的内容会变成马赛克。而我们希望它是纯白色的。 二.解决方法🍗 第一步 第二步 第三步 三. 解决后的效果🍗 用橡皮擦随便擦都不会出现马赛克了。 更新过后,想用win自带的画图软件会出…

【前沿技术了解】web图形Canvas、svg、WebGL、数据可视化引擎的技术选型

目录 Canvas:HTML5新增 Canvas标签(画布) 渲染上下文canvas.getContext(contextType[, contextAttributes]) 上下文类型(contextType) 上下文属性 (contextAttributes) 示例 动画 setInterval(function, delay)…

2023/11/26总结

一些学习记录: 在对数据库进行一系列操作的时候,遇到一个问题,在插入数据的时候,我数据库对应的是自增id,但是插入后想获取到这个id去使用。我以为是不可以马上获取的,然后看到 项目进度 购物车&#xff…

[pyqt5]PyQt5之如何设置QWidget窗口背景图片问题

目录 PyQt5设置QWidget窗口背景图片 QWidget 添加背景图片问题QSS 背景图样式区别PyQt设置窗口背景图像,以及图像自适应窗口大小变化 总结 PyQt5设置QWidget窗口背景图片 QWidget 添加背景图片问题 QWidget 创建的窗口有时并不能直接用 setStyleSheet 设置窗口部分…

【学习记录】从0开始的Linux学习之旅——驱动模块编译与加载

一、概述 Linux操作系统通常是基于Linux内核,并结合GNU项目中的工具和应用程序而成。Linux操作系统支持多用户、多任务和多线程,具有强大的网络功能和良好的兼容性。本文主要讲述如何编译及加载linux驱动模块。 二、概念及原理 应用程序通过系统调用与内…

软件介绍02- flameshot截图软件(linux系统可用)

1 软件介绍 在Windows和mac平台一直都使用着snipaste截图,非常好用,又能够钉图。遗憾是并没有开发linux版本,真不知道为什么。 好在终于找到一款截图软件,flameshot截图软件,可以平替snipaste。 下载网址:…

C语言WFC绘制矩形

代码实现: void CCGDrawingView::Rectangle(int x1, int y1, int x2, int y2, int x3, int y3, int x4, int y4, COLORREF color,CDC* pDC) {CPen redPen(PS_SOLID, 1, color);CBrush redBursh(color);CPen* pOldPen pDC->SelectObject(&redPen);CBrush* p…

Django(十一、auth认证模块)

文章目录 一、auth介绍auth认证相关模块及操作扩展auth_user表 一、auth介绍 Django自带一个admin路由,但是需要我们提供管理员账户和密码,如果想要使用admin后台管理,需要先创建表,然后创建管理员账户。 直接执行数据类迁移命令…

hivesql 将json格式字符串转为数组

hivesql 将json格式字符串转为数组 完整过程SQL在文末 json 格式字符串 本案例 json 字符串参考格式,请勿使用本数据 {"data": [{"province": 11,"id_card": "110182198903224674","name": "闾丘饱乾"…

【JAVA学习笔记】71 - JDBC入门

项目代码 https://github.com/yinhai1114/Java_Learning_Code/tree/main/IDEA_Chapter25/src/com/yinhai/dao_ 一、JDBC概述 1.基本介绍 1. JDBC为访问不同的数据库提供了统一的接口,为使用者屏蔽了细节问题。 2. Java程序员使用JDBC,可以连接任何提供了JDBC驱动…

YARN工作流程详解

图1 图2 图1 -作业提交阶段: 1、client 提交job,向 ResourceManager【RM】 申请job_id; 2、RM 返回 job_id 及资源提交路径 给 client 3、client 把job所需的资源提交 到 3中指定的路径中 4、client 上传完成资源后,向RM 发送执行作业请求,RM…

BGP选路实验

要求 1 使用PreVal策略,确保R4通过R2到达192.168.10.0/24 2 使用AS_Path策略,确保R4通过R3到达192.168.11.0/24 3 配置MED策略,确保R4通过R3到达192.168.12.0/24 4 使用Local Preference策略,确保R1通过R2到达192.168.1.0/24 5 使…

力扣日记11.25-【二叉树篇】对称二叉树

力扣日记:【二叉树篇】对称二叉树 日期:2023.11.25 参考:代码随想录、力扣 101. 对称二叉树 题目描述 难度:简单 给你一个二叉树的根节点 root , 检查它是否轴对称。 示例 1: 输入:root [1,…

Blender 连续 5 天遭受大规模 DDoS 攻击

Blender 发布公告指出,在2023年11月18日至23日期间,blender.org 网站遭受了持续的分布式拒绝服务(DDoS)攻击,攻击者通过不断发送请求导致服务器超载,使网站运营严重中断。此次攻击涉及数百个 IP 地址的僵尸…

ATK-ESP8266 WIFI模块串口通信通用实现方案

ATK-ESP8266 WIFI模块是一种常用的无线模块,它可以通过串口与外部设备进行通信,实现数据的收发和控制。本文将介绍一种通用的实现方案,帮助您在项目中使用ATK-ESP8266 WIFI模块进行串口通信。 【方案概述】 这个通用实现方案涵盖了ATK-ESP82…

算法-技巧-中等-颜色分类

记录一下算法题的学习12 颜色分类 题目:给定一个包含红色、白色和蓝色、共 n 个元素的数组 nums ,原地对它们进行排序,使得相同颜色的元素相邻,并按照红色、白色、蓝色顺序排列。 我们使用整数 0、 1 和 2 分别表示红色、白色和蓝…

Android 相机库CameraView源码解析 (二) : 拍照

1. 前言 这段时间,在使用 natario1/CameraView 来实现带滤镜的预览、拍照、录像功能。 由于CameraView封装的比较到位,在项目前期,的确为我们节省了不少时间。 但随着项目持续深入,对于CameraView的使用进入深水区,逐…

WordPress无需插件禁用WP生成1536×1536和2048×2048尺寸图片

我们在使用WordPress上传图片媒体文件的时候,是不是看到媒体库中有15361536和20482048的图片文件,当然这么大的文件会占用我们的服务器空间,如何禁止掉呢? function remove_default_image_sizes( $sizes) {unset( $sizes[1536x15…

spring-webmvc练习-日程管理-访问后端展示列表数据

1、util/request.js import axios from "axios";let request axios.create({baseURL: "http://localhost:8080",timeout: 50000 });export default request 2、api/schedule.js import request from "../util/request.js";export let getSchedu…