【Linux】指令(下)

news2024/11/27 8:30:59

⭐博客主页:️CS semi主页
⭐欢迎关注:点赞收藏+留言
⭐系列专栏:Linux
⭐代码仓库:Linux
家人们更新不易,你们的点赞和关注对我而言十分重要,友友们麻烦多多点赞+关注,你们的支持是我创作最大的动力,欢迎友友们私信提问,家人们不要忘记点赞收藏+关注哦!!!

指令(下)

  • 前言
  • 一、时间相关的指令
    • 1、显示方面
    • 2、设定时间方面
    • 3、时间戳
  • 二、cal指令
  • 三、find指令
  • 四、grep指令
  • 五、zip / unzip指令
    • 1、概念
    • 2、操作
  • 六、tar指令:打包/解包,不打开它,直接看内容
  • 七、bc指令
  • 八、uname –r指令
  • 九、重要的几个热键[Tab],[ctrl]-c, [ctrl]-d,[ctrl]-r
  • 十、关机
  • 十一、指令的运行原理
  • 十二、shell命令以及运行原理
  • 总结


前言

今天的指令内容讲解难度过于大,我们会讲解时间、日历、查找、筛选、压缩等指令,让大家对于指令理解地更加透彻,尤其是最后讲shell命令及其运行原理更加让大家理解好指令的本质。


一、时间相关的指令

我们写的日记有对应的时间,同时,我们以后进入公司以后是需要有日志的,因为不知道什么时候程序挂掉,所以日志起到了很好的方式去看什么时候程序挂掉并及时处理。而日志中包含了:日志的时间、日志等级、Debug、日志具体信息等等以行为单位进行打印,我们称之为日志文件。

1、显示方面

date 指定格式显示时间: date +%Y:%m:%d
date 用法:date [OPTION]… [+FORMAT]

在显示方面,使用者可以设定欲显示的格式,格式设定为一个加号后接数个标记,其中常用的标记列表如下:
%H : 小时(00…23)
%M : 分钟(00…59)
%S : 秒(00…61)
%X : 相当于 %H:%M:%S
%d : 日 (01…31)
%m : 月份 (01…12)
%Y : 完整年份 (0000…9999)
%F : 相当于 %Y-%m-%d

在这里插入图片描述

2、设定时间方面

date -s //设置当前时间,只有root权限才能设置,其他只能查看。
date -s 20080523 //设置成20080523,这样会把具体时间设置成空00:00:00
date -s 01:01:01 //设置具体时间,不会对日期做更改
date -s “01:01:01 2008-05-23″ //这样可以设置全部时间
date -s “01:01:01 20080523″ //这样可以设置全部时间
date -s “2008-05-23 01:01:01″ //这样可以设置全部时间
date -s “20080523 01:01:01″ //这样可以设置全部时间

3、时间戳

时间->时间戳:date +%s
时间戳->时间:date -d@1508749502
Unix时间戳(英文为Unix epoch, Unix time, POSIX time 或 Unix timestamp)是从1970年1月1日(UTC/GMT的
午夜)开始所经过的秒数,不考虑闰秒。

从1970年1月1日午夜到现在累积的秒数。
在这里插入图片描述
该打印的是1970年1月1日的午夜,但是这个时间是和我们国家是有时差的,所以就为早上8点。
在这里插入图片描述


二、cal指令

cal命令可以用来显示公历(阳历)日历。公历是现在国际通用的历法,又称格列历,通称阳历。“阳历”又名“太阳历”,系以地球绕行太阳一周为一年,为西方各国所通用,故又名“西历”。

命令格式: cal [参数][月份][年份]
功能: 用于查看日历等时间信息,如只有一个参数,则表示年份(1-9999),如有两个参数,则表示月份和年份
常用选项:
-3 显示系统前一个月,当前月,下一个月的月历
-j 显示在当年中的第几天(一年日期按天算,从1月1号算起,默认显示当前月在一年中的天数)
-y 显示当前年份的日历

在这里插入图片描述


三、find指令

Linux下find命令在目录结构中搜索文件,并执行指定的操作。
Linux下find命令提供了相当多的查找条件,功能很强大。由于find具有强大的功能,所以它的选项也很多,其中大部分选项都值得我们花时间来了解一下。
即使系统中含有网络文件系统( NFS),find命令在该文件系统中同样有效,只你具有相应的权限。
在运行一个非常消耗资源的find命令时,很多人都倾向于把它放在后台执行,因为遍历一个大的文件系统可能会花费很长的时间(这里是指30G字节以上的文件系统)。

语法: find pathname -options
功能: 用于在文件树种查找文件,并作出相应的处理(可能访问磁盘)
常用选项:
-name 按照文件名查找文件。

从家目录开始查找文件:
在这里插入图片描述

即:find可以在指定的路径下进行文件的搜索 – 真的可以在磁盘文件中查找。

查找指令比较:

which:可以在指定路径下,查找文件。
在这里插入图片描述

whereis:在系统特定的路径下查找,既可以找到可执行程序,又可以找到手册、安装包、压缩包之类的。
在这里插入图片描述


四、grep指令

先来个大文件放到log.txt文件中:
指令:cnt=0; while [ $cnt -le 10000 ]; do echo “hello linux $cnt”; let cnt++; done

新指令:du -k log.txt – 看文件的大小(多少k)
du -m log.txt – 看文件大小(多少m)
在这里插入图片描述

grep为行文本过滤工具。
语法: grep [选项] 搜寻字符串 文件
功能: 在文件中搜索字符串,将找到的行打印出来
常用选项:
-i :忽略大小写的不同,所以大小写视为相同
-n :顺便输出行号
-v :反向选择,亦即显示出没有 ‘搜寻字符串’ 内容的那一行
在这里插入图片描述

为了更好地明白grep指令,我们使用nano打开记事本并进行写一些东西进行讲解
>nano安装代码:yum install -y nano:
在这里插入图片描述
退出操作为:ctrl+x y 回车
我写的内容如下:
在这里插入图片描述

不仅仅能过滤数字,还能过滤字符串。
在这里插入图片描述

grep -v 搜寻字符串 文件:反向搜索。
在这里插入图片描述

grep -n ‘’ 文件:空串就是什么都符合加上编号。
在这里插入图片描述

grep -i 搜寻字符串 文件:忽略大小写。
在这里插入图片描述

加上管道: cat log.txt | grep 搜索字符串。
在这里插入图片描述

加个餐,用grep命令搜索服务器:
在这里插入图片描述


五、zip / unzip指令

1、概念

为什么要在网络上进行打包压缩?
1、能被打包压缩的一定是一个整体,由多个文件变成一个文件,不容易造成文件的缺失。
2、打包压缩体积变小,下载时间减短,存储占用空间减小。

所以Linux也是需要打包压缩的,因为Linux充当服务器的时候,也需要各种网络应用场景来满足通讯的需求。

语法: zip 压缩文件.zip 目录或文件
功能: 将目录或文件压缩成zip格式
常用选项:
-r 递 归处理,将指定目录下的所有文件和子目录一并处理
举例:
将test2目录压缩:zip test2.zip test2/*
解压到tmp目录:unzip test2.zip -d /tmp

2、操作

安装zip和unzip的指令:以root方式登录 + yum install -y zip unzip

我们先来创建了一个目录和文件:
在这里插入图片描述
zip 要命名的文件 要压缩的文件 – 这个是将普通文件进行压缩,只能压缩选中的一个。
在这里插入图片描述

压缩递归式文件:zip -r 命名的新压缩文件 要压缩的文件 – 这个是可以将文件里面有文件的全部进行压缩。
在这里插入图片描述

unzip 解压的文件 – 它原本叫什么被压缩以后再解压它还叫什么。
在这里插入图片描述
解包解压到指定文件中:
unzip 命名的文件 -d 指定的文件
在这里插入图片描述


六、tar指令:打包/解包,不打开它,直接看内容

tar [-cxtzjvf] 文件与目录 … 参数:
-c :建立一个压缩文件的参数指令(create 的意思);
-x :解开一个压缩文件的参数指令!
-t :查看 tarfile 里面的文件!
-z :是否同时具有 gzip 的属性?亦即是否需要用 gzip 压缩?
-j :是否同时具有 bzip2 的属性?亦即是否需要用 bzip2 压缩?
-v :压缩的过程中显示文件!这个常用,但不建议用在背景执行过程!
-f :使用档名,请留意,在 f 之后要立即接档名喔!不要再加参数!
-C : 解压到指定目录

压缩:
在这里插入图片描述
解压到当前路径(先删除原本的文件再进行解压):
在这里插入图片描述
解压到上级路径:
在这里插入图片描述

总结:
tar czf XXX – 打包压缩
tar tzf XXX.tgz – 预览
tar xzf XXX.tgz – 解压解包

tar --> 打包后缀
.gz --> 压缩后缀
XXX.tar.gz == XXX.tgz


七、bc指令

相当于一个计算器,而且bc命令可以很方便的进行浮点运算。
在这里插入图片描述
在这里插入图片描述


八、uname –r指令

语法:uname [选项]
功能: uname用来获取电脑和操作系统的相关信息。
补充说明:uname可显示linux主机所用的操作系统的版本、硬件的名称等基本信息。
常用选项:
-a或–all 详细输出所有信息,依次为内核名称,主机名,内核版本号,内核版本,硬件名,处理器类
型,硬件平台类型,操作系统名称

在这里插入图片描述
在这里插入图片描述
X86_64 == x64
X86 == x32


九、重要的几个热键[Tab],[ctrl]-c, [ctrl]-d,[ctrl]-r

[Tab]按键—具有『命令补全』和『档案补齐』的功能
[Ctrl]-c按键—让当前的程序『停掉』
[Ctrl]-d按键—通常代表着:『键盘输入结束(End Of File, EOF 戒 End OfInput)』的意思;另外,他也可以用来取代exit
[Ctrl]-r按键—历史搜索命令(记录了历史)
history — 历史命令(默认记录最新的1000条,是可以修改的)

先ctrl+r,再写命令段,搜索到以前的命令。
在这里插入图片描述


十、关机

语法:shutdown [选项] 常见选项:
-h : 将系统的服务停掉后,立即关机。
-r : 在将系统的服务停掉之后就重新启动
-t sec : -t 后面加秒数,亦即『过几秒后关机』的意思

Linux操作系统(服务器)永远不关机。


十一、指令的运行原理

在这里插入图片描述
而指令的本质就是编译好的程序和脚本,一定会在系统的指定路径下存放。
聊一聊指令的本质:
我们所有的指令,最终都是要在操作系统内部运行,但是操作系统使用难度比较大,我们用户不能直接和操作系统打交道,所以就有了命令行解释器和图形化界面,而我们的bash指令就为命令行解释器
在这里插入图片描述
总结,即:在这里插入图片描述
命令行解释器存在的意义:
1、进行命令行解释
2、保护操作系统,对于用户的非法请求直接拦截


十二、shell命令以及运行原理

Linux严格意义上说的是一个操作系统,我们称之为“核心(kernel)“ ,但我们一般用户,不能直接使用kernel。而是通过kernel的“外壳”程序,也就是所谓的shell,来与kernel沟通。
在这里插入图片描述
对比windows GUI,我们操作windows 不是直接操作windows内核,而是通过图形接口,点击,从而完成我们的操作(比如进入D盘的操作,我们通常是双击D盘盘符.或者运行起来一个应用程序)。
shell 对于Linux,有相同的作用,主要是对我们的指令进行解析,解析指令给Linux内核。反馈结果在通过内核运行出结果,通过shell解析给用户。

在这里插入图片描述


总结

我们学习好Linux的前提是要好好练习指令,经常性地敲指令,把这个指令练熟并且知道这些本质。


家人们不要忘记点赞收藏+关注哦!!!

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

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

相关文章

论文阅读:Multimodal Graph Transformer for Multimodal Question Answering

文章目录 论文链接摘要1 contribution3 Multimodal Graph Transformer3.1 Background on Transformers3.2 Framework overview 框架概述3.3 Multimodal graph construction多模态图的构建Text graphSemantic graphDense region graph Graph-involved quasi-attention 总结 论文…

【AIGC提示工程 - MidJourney教程:一】“Midjourney AI“是什么,为何众人皆谈?

关注元壤教育公众号系统学习AIGC提示工程课程。 更多AIGC好博客,请移步访问AIGC博客派 Midjourney AI是一个极富创造性的工具,它能够帮助用户通过指令创建图像。这些图像是基于用户的想象力而创造的。 在本文中,我们将详细了解Midjourney AI。…

软件测试面试面对史上最难求职季,会哪些测试技能更容易拿到offer?

在一线大厂,没有测试这个岗位,只有测开这个岗位。这几年,各互联网大厂技术高速更新迭代,软件测试行业也 如果你在中小型公司,普通的测试工程师20K差不多到极限了,薪资想再进一步提升很困难。而在阿里巴巴P…

【AIGC提示工程 - MidJourney教程:二】《MidJourney参数大全指南:实现最佳图像输出的关键》

关注元壤教育公众号系统学习AIGC提示工程课程。 更多AIGC好博客,请移步访问AIGC博客派 这篇文章介绍了不同的MidJourney参数和提示词,帮助你创建你选择的图像。探索如何使用不同的风格和参数进行操作。 如果你使用Midjourney应用,你就知道提示…

NetSuite SuiteQL 内建函数

之前写过一篇文章介绍SutieQL Query Tool,今天继续挖掘一下SuiteQL的价值。 NetSuite SuiteQL Query Tool_netsuite好用吗_毛岩喆的博客-CSDN博客这是一个非常好的NetSuite数据查询工具,免费、强大!所以忍不住安利给大家。首先介绍一下背景&…

Redis系列--redis持久化

一、为什么需要持久化 redis本身运行时数据保存在内存中,如果不进行持久化,那么在redis出现非正常原因宕机或者关闭redis的进程或者关闭计算机后数据肯定被会操作系统从内存中清掉。当然,redis本身默认采用了一种持久化方式,即RD…

11.Kafka系列之Stream实践

Kafka Streams是一个基于Apache Kafka的处理库,可以用于实现高效、可扩展的实时数据处理应用程序。它是一个轻量级的库,允许你在Java和Scala中创建和运行流处理应用程序,这些应用程序可以读取输入流,执行各种数据转换,…

MyBatis的配置案例

Mybatis中Map的使用 如果需要所有的代码&#xff0c;可以看我上一篇 在接口中定义 int addUser1(Map<String,Object> map); 插入语句 <insert id"addUser1">insert into user(id,name,pwd) values (#{userid},#{username},#{userPwd})</insert> …

Vue3-黑马(十)

目录&#xff1a; &#xff08;1&#xff09;vue3-antdv-全局提示与校验 &#xff08;2&#xff09;vue3-进阶-router-入门 &#xff08;3&#xff09;vue3-进阶-router-动态导入-嵌套路由-重定向 &#xff08;1&#xff09;vue3-antdv-全局提示与校验 当用户新增修改&…

redis(11)

一)基于Set集合实现点赞功能: 在我们的博客表当中&#xff0c;每一篇博客信息都有一个like字段&#xff0c;表示点赞的数量 需求: 1)同一个用户只能点赞一次&#xff0c;再次进行点赞则会被取消&#xff1b; 2)如果当前用户已经点赞过了&#xff0c;那么点赞按钮高亮显示&…

传输层:UDP协议

传输层中有两个重要的协议&#xff1a;TCP协议和UDP协议。 本博文分享的是UDP协议&#xff0c;本文将从UDP的协议格式、UDP的特定以及其缓冲区入手。 传输层 传输层的作用是负责数据能够从发送端传输到接收端&#xff0c;主要是传输策略。 端口号 端口号标识的是一个主机上进…

【AIGC提示工程 - Midjourney教程:三】如何利用Midjourney AI创作一幅杰出的艺术作品?

关注元壤教育公众号系统学习AIGC提示工程课程。 更多AIGC好博客&#xff0c;请移步访问AIGC博客派 要在Discord上使用Midjourney机器人&#xff0c;您需要输入一个指令。指令能帮助您创建图片、修改默认设置、监控用户信息以及执行其他有用的操作。如果想要生成一张图片&#x…

RHCSA之Linux目录结构

目录 Linux目录结构 Linux目录结构的特点 分区‘加载’于目录结构 Windows与Linux目录结构区别 工作目录、用户家目录及路径 Linux的文件类型大致可分为 查看文件系统类型 方法一 ls -l 路径 方法二 file 路径 RHCSA之Linux目录结构 使用树形目录结构来组织和管理文件 整个…

51单片机(十三)DS18B20温度传感器

❤️ 专栏简介&#xff1a;本专栏记录了从零学习单片机的过程&#xff0c;其中包括51单片机和STM32单片机两部分&#xff1b;建议先学习51单片机&#xff0c;其是STM32等高级单片机的基础&#xff1b;这样再学习STM32时才能融会贯通。 ☀️ 专栏适用人群 &#xff1a;适用于想要…

第14届蓝桥杯C++省赛(初级)真题

一、选择题&#xff08;50分&#xff09; 第 1 题 单选题&#xff08;10分&#xff09; C中&#xff0c;bool类型的变量占用字节数为 ( )。 *选择题严禁使用程序验证&#xff0c;选择题不答或答错都不扣分 A.1 B.2 C.3 D.4 第 2 题 单选题&#xff08;10分&#xff09;…

Windows 下载与安装CUDA和Pytorch【安装教程、深度学习】

参考链接&#xff1a;Windows 下安装 CUDA 和 Pytorch 跑深度学习 - 动手学深度学习v2_哔哩哔哩_bilibili 0.准备工作 请确保你是NVIDIA的显卡&#xff08;不能是AMD、集成显卡&#xff09; 1.下载CUDA 打开developer.nvidia.com/cuda-downloads&#xff0c;打开有点慢 选择…

2023/5/14 数值计算方法考试复盘

第一题 问我1-()如果减少乘除次数,那么如何做出变形。 正确解法&#xff1a; 可以利用乘法分配律&#xff0c;将1拆分成1 - 1/2! 1/2! - 1/3! 1/3! - ... - 1/n! 1/n!&#xff0c;然后将拆分出来的两项合并&#xff0c;得到&#xff1a; 1 - (1/2! - 1/2!) - (1/3! - 1/3…

支付系统设计一:支付系统产品化

系列文章目录 支付系统设计一&#xff1a;支付系统产品化 支付系统设计二&#xff1a;统一开发框架 支付系统设计三&#xff1a;渠道网关设计01-总览 支付系统设计三&#xff1a;渠道网关设计02-客户端报文解析 支付系统设计三&#xff1a;渠道网关设计03-参数验证 支付系统设…

在 Windows 上安装 Docker

一、前言 个人主页: ζ小菜鸡大家好我是ζ小菜鸡&#xff0c;让我们一起学习在 Windows 上安装Docker。如果文章对你有帮助、欢迎关注、点赞、收藏(一键三连) 二、 Docker是什么 Docker是一个开源的应用容器引擎&#xff0c;让开发者可以打包他们的应用以及依赖包到一个可抑制的…

K8s(Kubernetes)学习(一):k8s概念及组件

Kubernetes中文文档&#xff1a;https://kubernetes.io/zh-cn/docs/home/ Kubernetes源码地址&#xff1a;https://github.com/kubernetes/kubernetes 一:Kubernetes是什么 首先要了解应用程序部署经历了以下几个时代&#xff1a; 传统部署时代&#xff1a;在物理服务器上运…