<3>Linux 基础指令:从时间、查找、文本过滤到 .zip/.tgz 压缩解压与常用热键

[1. date](#1. date)

[1.1 date +%Y-%m....](#1.1 date +%Y-%m....)

[1.2 date +%s](#1.2 date +%s)

[1.3 date -d @时间戳](#1.3 date -d @时间戳)

[1.4 时间戳](#1.4 时间戳)

[2. cal](#2. cal)

[2.1 cal 年份](#2.1 cal 年份)

[2.2 cal -3](#2.2 cal -3)

[3. find 路径 -name 文件名](#3. find 路径 -name 文件名)

[4. whereis](#4. whereis)

[5. grep "999" data.txt](#5. grep "999" data.txt)

[5.1 cat 文件 | grep '内容' ------ grep的工程作用](#5.1 cat 文件 | grep '内容' —— grep的工程作用)

[5.2 grep -i](#5.2 grep -i)

[5.3 grep -n](#5.3 grep -n)

[6. top](#6. top)

[6.1 top -d 数字 -n 数字](#6.1 top -d 数字 -n 数字)

[7. 打包 和 压缩](#7. 打包 和 压缩)

[7.1 touch/rm test{1...100}.c](#7.1 touch/rm test{1...100}.c)

[7.2 zip 压缩包名.zip 文件名/目录名](#7.2 zip 压缩包名.zip 文件名/目录名)

[7.3 unzip 压缩包名.zip](#7.3 unzip 压缩包名.zip)

[7.4 zip -r 压缩包名.zip 文件名](#7.4 zip -r 压缩包名.zip 文件名)

[7.5 unzip 1.zip -d 路径](#7.5 unzip 1.zip -d 路径)

[7.6 sz 1.zip](#7.6 sz 1.zip)

[7.7 windows 拖拽传输压缩包​编辑7.8 rz -E](#7.7 windows 拖拽传输压缩包编辑7.8 rz -E)

[8. tar -czf 压缩包名.tgz 文件名(.tar.gz)](#8. tar -czf 压缩包名.tgz 文件名(.tar.gz))

[8.1 flie 文件/目录](#8.1 flie 文件/目录)

[8.2 tar -xzf 压缩包名字.tgz](#8.2 tar -xzf 压缩包名字.tgz)

[8.3 tar -xzf 1.tgz -C 路径](#8.3 tar -xzf 1.tgz -C 路径)

[8.4 tar -v](#8.4 tar -v)

[8.5 sz 1.tgz](#8.5 sz 1.tgz)

[8.6 scp 1.tgz 账号名@公网ip:路径](#8.6 scp 1.tgz 账号名@公网ip:路径)

[9. bc](#9. bc)

[10. Linux小面试题 ------ uname -r](#10. Linux小面试题 —— uname -r)

[10.1 你的计算机的体系结构是什么?](#10.1 你的计算机的体系结构是什么?)

[10.2 如何查看你的Linux的内核版本?](#10.2 如何查看你的Linux的内核版本?)

[10.3 如何查看你的具体系统发行版?](#10.3 如何查看你的具体系统发行版?)

[11. Linux常用热键 Hot Table​](#11. Linux常用热键 Hot Table)

1. date

date : 显示日期

1.1 date +%Y-%m....

date +...(指定修改日期的表达形式)

%Y 年 %m 月 %d 日 %H 时 %M 分 %S 秒 这是时间的固定方式。中间可用任意分隔符

1.2 date +%s

date +%s (显示Unix时间戳)

Unix时间戳:计算机从 1970年1月1日0时0分0秒 到现在的计时!计算机通过特定的公式计算,就能得到现在的时间(不考虑润秒) 。他叫格林尼治时间(UTC)(翻译可能不同)

1.3 date -d @时间戳

date -d @时间戳 (显示指定 时间戳 的 时间)

因为我们是东八区,所以不是标准的0时0分0秒。我们用的是统一的北京时间
2038年问题:时间戳溢出

时间戳快到达INT_MAX了,溢出变成负数了怎么办?整个世界时间都错乱啦?

千禧年事件就是类似的原因

当然,快到达上限,标准委员会肯定会把标准时间规划到最近几年,或者换成long long 类型什么的,不用担心。

并且最重要的是:2038问题早已是32位系统下的历史遗留问题,现如今64位系统早已使用

long long 解决,时间戳可使用几百亿年,彻底安全。

1.4 时间戳

时间戳------提供时间,记录日志

时间戳就是计算机与我们的编辑器,计算机通过公式计算时间戳才能得出我们所能看懂的时间

现在世界上的电子设备都是有时间戳的,不然我们根本看不到时间。每个电子设备的时间戳可能都不同,但是不能缺少时间戳。这就是时间戳的重要性
再者,时间戳演化的一个重要场景是:日志!

实践工程中,日志是必不可少的。通过记录日志,可以调查到每个函数调用的时间,以及是否调用成功,是否报错

有了日志,可以提高调试效率,精确定位错误发生的时间,"地点",原因

Linux下的日志

2. cal

cal (获取当年度,本月的日历)

2.1 cal 年份

cal 年份 (显示指定年份的12个月份,1-12月)

2.2 cal -3

cal -3 (显示今年本月的近3月,数字可改变,年份参数会被忽略)

3. find 路径 -name 文件名

find 路径 -name 文件名(指定路径(默认根目录)查找文件名,真正遍历整棵树的查找)

find 指令选项很多,可以 -type,-size ....有需要再查看就行,最主要是-name

第二遍会很快,因为操作系统把文件内容缓存到内存里了

4. whereis

whereis (查找指定指令,及其在man手册的路径)

5. grep "999" data.txt

grep "999" data.txt (把data.txt的内容给grep过滤,包含999行的就输出到屏幕上)

注意,这个 双引号" " 和 单引号' ' 基本没区别。可以随意替换

5.1 cat 文件 | grep '内容' ------ grep的工程作用

这样也行

5.2 grep -i

grep -i (忽略大小写)

5.3 grep -v

grep -v (v,reverse反向匹配,不包含的就输出)

5.3 grep -n

grep -n 输出行号

6. top

top ,Linux的任务管理器

作用:当电脑卡顿,打开任务管理器,看什么应用占用资源比如cpu最多,就退出该应用

6.1 top -d 数字 -n 数字

top -d 1 -n 5 :刷新间隔1秒,刷新5次后退出刷新就是屏幕重新打开top,展示实时的数据

7. 打包 和 压缩

打包 是 多变一,压缩 是 大变小,这是两种不同的动作 ,但是工程中认为这是一套动作。

日常场景:压缩包把文件夹打包压缩在一起,再发送,安全直观便捷。如果直接把文件夹传了,大概率会分散成几十几百个文件,别人复制起来很费时费力,少了一个也会引起大问题,要一个个检查更耗时间。

所以为什么要打包和压缩? ------------节约时间,空间,提升效率!!

对于网络文件的打包压缩,其实是靠压缩算法,并且这种压缩算法有很多很多,如何区分这些算法?

主要是看文件后缀。下面就介绍两种压缩方式 ------ .zip , .tg z == tar.gz

遇到没见过的怎么办?查询:

7.1 touch/rm test{1...100}.c

touch/rm test{1...100}.c 批量创建,删除文件!!1-100会展开。cat等,也能如此操作!

也能这样删掉!

7.2 zip 压缩包名.zip 文件名/目录名

zip 压缩包名.zip 文件名/目录名(将文件,目录压缩成一个名为压缩包名.zip的压缩包)

7.3 unzip 压缩包名.zip

unzip 压缩包名.zip (解压一个.zip的压缩包文件)

7.4 zip -r 压缩包名.zip 文件名

zip -r 压缩包名.zip 文件名(-r ,递归压缩目录,这样才能成功!不然只会当普通文件一样,压缩最外层)

7.5 unzip 1.zip -d 路径

unzip 1.zip -d 路径 (解压到指定路径

7.6 sz 1.zip

sz 1.zip (将 1.zip 压缩包以 窗口选择形式 从 当前Linux终端 传输 到 当前电脑windows上 )

7.7 windows 拖拽传输压缩包

7.8 rz -E

rz -E (以窗口选择形式,从windows指定路径下选择需要传输的文件,双击确认传输

8. tar -czf 压缩包名.tgz 文件名(.tar.gz)

tar -czf 压缩包名.tgz 文件名 : 将文件打包并压缩为名为压缩包名,.tgz后缀的压缩包文件

它本身就是递归压缩,不能加 -r ,加了反而报错

8.1 flie 文件/目录

flie 文件/目录 : 查看一个文件的更详细信息

8.2 tar -xzf 压缩包名字.tgz

tar -xzf 压缩包名字.tgz : 解压 .tgz压缩包文件

8.3 tar -xzf 1.tgz -C 路径

tar -xzf 1.tgz**-C 路径 : 解压到指定目录下**

可以组合为: -Cxzf 等,但是f必须最后,因为需要跟文件名

8.4 tar -v

tar -v : 显示压缩,解压的过程,可随意组合

慎用:压缩文件多,会刷屏。如果压缩很久,就会一直刷屏,刷一堆

8.5 sz 1.tgz

8.6 scp 1.tgz 账号名@公网ip:路径

实现将压缩包从一台Linux终端,传输到另一台Linux终端上

9. bc

bc : Linux下的计算器,同windows下的

10. Linux小面试题 ------ uname -r

10.1 你的计算机的体系结构是什么?

体系结构是什么? 本质上是问:CPU架构是什么

32位基本淘汰了

10.2 如何查看你的Linux的内核版本?

10.3 如何查看你的具体系统发行版?

11. Linux常用热键 Hot Table

相关推荐
Bernard02151 小时前
给普通人的 AI 黑话翻译手册:一文看懂 LLM、RAG、Agent 到底是什么
前端·后端
希望永不加班1 小时前
Spring AOP 核心概念:切面、通知、切点、织入
java·数据库·后端·mysql·spring
泰式大师1 小时前
# 为什么我认为 Hermes 需要说明 self-evolution 的设计来源
后端
胖纳特1 小时前
Seafile 文件预览增强方案:集成 BaseMetas Fileview 突破格式限制
前端·后端
!停1 小时前
C++入门STL容器string底层剖析
开发语言·c++
fliter1 小时前
Rust这四个问题,从新手到专家都在被折磨
后端
木雷坞2 小时前
2026年了,NAS拉个Docker镜像还要3小时?技术方案PK与实测对比 🚀
运维·docker·容器
hughnz2 小时前
自动化控压钻井系统的挑战与风险
linux·服务器·网络