文章目录

  • date指令
  • cal指令
  • find指令(指令本质也是文件)
  • which指令
  • file指令
  • whereis指令
  • alias指令
  • grep指令
  • top指令
  • 打包和压缩指令
    • zip/unzip指令
      • 关于rzsz(linux与windows互传 )
    • tar指令
      • linux机器之间互传
  • bc指令
  • uname指令(查看linux机器体系结构)
  • 几个重要的热键
    • [Tab]按键
    • [Ctrl]+c按键
    • [Ctrl]+r按键
  • 小技巧:!(重复上一个执行命令)
  • shutdown指令
  • shell命令以及运行原理
    • 命令行解释器
    • bash


date指令

date直接输出显示当前linux系统时间:

在这里插入图片描述

如果我们想把它转化为年月日时分秒需要借助以下格式:

在这里插入图片描述

对应关系如下:

Y 年
m 月
d 日
H 时
M 分
S 秒

这里小编补充一点,date +%s还可以获取时间戳:
在这里插入图片描述

Unix时间戳(英⽂为Unix epoch, Unix time, POSIX time 或 Unix timestamp)是从1970年1⽉1⽇(UTC/GMT的午夜)开始所经过的秒数,不考虑闰秒。 时间戳本质是一个单调递增的计数器。
date指令还可以将时间戳转化为我们看得懂的年月日时分秒,需要加 -d ,具体指令如下:
在这里插入图片描述

cal指令

(calendar)
它可以显示今天所在月的日历信息,-3 可以查看上一月当前月和下一月的日历信息。加年份还可以查看整年的日历信息。

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

find指令(指令本质也是文件)

人如其名,这是一条查找指令,样例如下:

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

通配符:它可以匹配任意长度的任意字符。
这里小编补充一个理论:我们见到的大部分指令本质是可执行文件
下面这个操作可以证明这个观点,find指令可以查找普通文件,那指令本质也是文件那按理来说也可通过find指令找到,下面我们就从根目录里来查找指令文件:

在这里插入图片描述

原来指令真的是文件,并且都存在/usr/bin路径目录下,所以指令就是linux系统的固定目录下的可执行文件。
所以这也解释了我们要运行自己写的可执行程序时要在前面指定当前路径(./),因为执行可执行程序之前需要先找到这个程序文件,而系统默认只会去/usr/bin目录下找。

which指令

which指令专门用来搜索linux系统指定的命令,它会直接到/usr/bin目录下搜索,所以which指令等价于 find
/usr/bin -name xxx。

在这里插入图片描述

file指令

该指令用来辨识文件类型。

在这里插入图片描述

whereis指令

用来查找程序的源、二进制文件或手册。
它的介于find的which之间的一条查找指令,find可以指定任意路径下搜索,which是只在/usr/bin路径下搜索,而whereis会在以下路径下搜索:

在这里插入图片描述

alias指令

(别名)
该指令可以为指令取别名,功能类似我们C++认识的引用。

在这里插入图片描述

系统执行指令时有优先顺序,执行命令时会优先搜索别名并执行,若不存在别名再去真正存放可执行文件的路径/usr/bin下找。(别名是shell层面的一种快捷方式,只存在内存中(内存级文件),关闭当前shell对话,我们自己起的别名和系统本身的别名就会失效,系统里的别名在系统重新启动时会自动重新生成)
下面我举一个例子来加深理解:

在这里插入图片描述

grep指令

这是一条文本过滤指令,把文本中包含‘搜索字符串’内容的行打印出来,样例如下:

在这里插入图片描述

-v 选项,反向选择,把文本中不包含‘搜索字符串’内容的行打印出来:

在这里插入图片描述

-n 选项,打印行号,下面的例子一共会打印20行,grep会过滤掉与之要求不符的行。

在这里插入图片描述

因为grep指令是大小写敏感的,所以还有一个忽略大小写的选项 -i

在这里插入图片描述

top指令

该指令类似于windows的任务管理器,可以查看linux下各种任务占用情况,内存等信息:

在这里插入图片描述

相比top,还有top的升级版工具,小编把它们的下载指令也拿过来了:
htop:
CentOS:yum install htop
Ubuntu:apt-get install htop
atop:
CentOS:yum install atop
Ubuntu:apt-get install atop

top指令还有两个选项,因为任务管理器是一直在变化的,所以我们可以控制它的刷新时间间隔和刷新次数。
-d 刷新时间间隔
-n 刷新次数

在这里插入图片描述

打包和压缩指令

打包压缩本身不是目的,是为了将文件资源更好的网络传输,提高效率。除此之外,我们在网络上下载资源也是以打包压缩的形式存在的,所以打包压缩也可以提升下载资源的效率。打包压缩,解压解包需要由传输方计算机和接受方计算机来执行,所以本质就是消耗本地算力来提升数据传送时的效率。

zip/unzip指令

如何打包压缩:
压缩有不同的压缩算法,不同的压缩算法压缩文件后会形成不同格式的文件,linux系统中,有许多特定格式的压缩文件。

可以打包压缩一个目录及其子目录,也可以打包压缩一个单独的文件,当然,要打包压缩目录也需要递归式的打包压缩,所以需要加一个选项 -r,以下是打包压缩并解压目录test_mulu的样例:
(解压时把待压缩目录放到test目录下是一个好习惯,因为不知道会解压出多少文件,这样操作不会影响其他文件)

在这里插入图片描述

我们上面解压文件是默认解压到当前路径的,我们还可以加选项 -d 解压到指定路径:
在这里插入图片描述

关于rzsz(linux与windows互传 )

这个⼯具⽤于 windows 机器和远端的 Linux 机器通过 XShell 传输⽂件. 安装完毕之后可以通过拖拽的⽅式将⽂件上传过去.
rz: 将windows文件发送到linux
sz:将linux文件发送到windows
将windows文件发送到linux 可以直接拖拽实现。
样例:当我们输入以下指令后,windows桌面上就会有一个test_mulu.zip的压缩文件。

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

tar指令

我们上面的zip/unzip并不是linux上主流的打包压缩方式,linux下大部分压缩文件格式都是.tgz格式,以tar指令来实现的。
tar指令有许多选项,不过不用都记住,实际我们只会用到其中的三个,并且是组合它们当成整体使用。
-c :建⽴⼀个新的压缩⽂件(create 的意思);
-x :解开⼀个压缩⽂件的参数指令!
-t :查看 tarfile ⾥⾯的⽂件!
-z :打包的同时还要压缩
-j :是否同时具有 bzip2 的属性?亦即是否需要⽤ bzip2 压缩?
-v :压缩的过程中显⽰⽂件!这个常⽤,但不建议⽤在背景执⾏过程!
-f :使⽤文档名,请留意,在 f 之后要⽴即接文档名喔!不要再加参数!
-C : 解压到指定⽬录
在打包压缩时一般我们把czf当成一个整体一起用,如果你想看压缩的过程,还可以加上v。
如果要解压就加上选项xzf
这里的选项带不带-都可以,但是有些操作系统平台不支持带-。
所以tar指令不用想的太复杂,记住以下格式就行了:

在这里插入图片描述

tar指令和zip/unzip一样,解压都是默认解压到当前目录,要解压到指定目录需要选项-C:
在这里插入图片描述

linux机器之间互传

样例如下:

在这里插入图片描述

发送端格式如下:要注意公网ip前面有@ 后面有:

在这里插入图片描述

bc指令

bc命令可以很⽅便的进⾏浮点运算,主要和管道结合使用:

在这里插入图片描述

uname指令(查看linux机器体系结构)

该指令可以⽤来获取电脑和操作系统的相关信息。
这里有一道面试题:如何查看linux机器体系结构,其实就是问的CPU架构,要回答这个问题就需要uname指令:
-a选项显示计算机所有信息
-r选项显示计算机的内核版本和架构

在这里插入图片描述

小编再补充一个查系统版本的指令:

在这里插入图片描述

几个重要的热键

[Tab]按键

它具有『命令补全』和『档案补⻬』的功能。
比如输入whi tab两下:

在这里插入图片描述

输入whic tab一下:

在这里插入图片描述

因为只有which指令的前四个字母是whic,所以系统帮我们自动补全了。

[Ctrl]+c按键

让当前的程序『停掉』,它是我们将来在命令行中进行容错处理的热键。(在vim下ctrl+c程序会崩溃)

[Ctrl]+r按键

它可以搜索历史命令,搜索出来以后按回车命令就会开始执行。

小技巧:!(重复上一个执行命令)

当我们有某个命令需要大量重复执行时,就可以用到!+ 需要重复执行命令的首字母,这里执行的是当前所在位置上一个以该字母开头的指令。

在这里插入图片描述

shutdown指令

这是一条关机指令,小编就不演示了。
常⻅选项如下:
-h:将系统的服务停掉后,⽴即关机。
-r:在将系统的服务停掉之后就重新启动
-t:-t 后⾯加秒数,亦即『过⼏秒后关机』的意思

shell命令以及运行原理

我们上面介绍了无数多个指令,那现在有个问题摆在我们面前,这些指令究竟是怎么运行的?要想知道答案,我们要先从操作系统聊起,其实我们口中所说的操作系统分为两个层面:
广义操作系统:操作系统内核(kernel)+外壳程序(比如linux的Shell命令行,windows的图形化界面)+系统自带的必要的应用软件(如windows的ppt,word)
狭义操作系统:操作系统内核 接下来我们来达成一下共识,以后小编所说的操作系统都是指的操作系统内核。 我们普通人一般不适合和linux内核打交道,因为非常复杂并且需要非常专业的理论知识。所以往往会在linux内核之上包装一层软件层,也就是操作系统的外壳程序,在linux下我们一般把它称为shell外壳。
这个外壳程序就是沟通用户和内核的桥梁,它通常会对用户行为进行解析,把解析结果交给内核,内核执行完在将结果经过外壳交给用户。
这个外壳程序的在linux的具体体现就是我们见到的命令行(命令行是用户与操作系统进行交互的一种界面),所以我们平时敲的指令都是由命令行来接受并解析再交给内核的。
补充:命令行解释器的功能一般不会由shell亲自来做,而是交给它派生的子进程来做,因为如果内核认为shell传递过来的指令有风险,有可能会将shell干掉,那如果是由子进程来做的话没了一个子进程shell还可以派生更多的子进程。

命令行解释器

我们来总结一下,这个外壳程序官方叫做命令行解释器(command interpreter),命令行解释器也被称之为shell,它的核心功能如下:
一、是将使⽤者的命令翻译给核⼼(kernel)处理,同时,将核⼼的处理结果翻译给使⽤者。
二、当用户提出非法请求时,外壳会将请求拦住,终止访问内核,相当于变相的保护了内核。

bash

命令行解释器是一个统称,在linux系统中有许多命令行解释器,而其中的bash是最主要的命令行解释器,我们每次登陆操作系统后系统都会为我们新起一个bash程序,它本质也是一个可执行文件,只不过它是个死循环,他会不断的读取用户数组的指令并对指令做解析。

在这里插入图片描述
以上就是小编分享的全部内容了,如果觉得不错还请留下免费的关注和收藏
如果有建议欢迎通过评论区或私信留言,感谢您的大力支持。
一键三连好运连连哦~~

在这里插入图片描述

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

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

相关文章

MSTP 多生成树协议

MSTP 多生成树协议 STP/RSTP 的局限性 所有 vlan 共享一颗生成树无法实现不同 vlan 在多条 Trunk 链路上的分担 二层链路负载均衡STP/RSTP 的局限——次优二层路径**次优二层路径(Suboptimal Layer 2 Path) 是指: ** 数据帧在交换网络中传输时…

Shell脚本-tee工具

一、前言在 Linux/Unix 系统中,tee 是一个非常实用的命令行工具,它可以帮助我们 同时将命令的输出打印到终端,并写入文件。这种“双路输出”机制在脚本调试、日志记录、自动化任务中非常有用。无论是做日志分析、脚本调试,还是编写…

走进Linux的世界:Linux基本指令(三)

嘿,各位技术潮人!好久不见甚是想念。生活就像一场奇妙冒险,而编程就是那把超酷的万能钥匙。此刻,阳光洒在键盘上,灵感在指尖跳跃,让我们抛开一切束缚,给平淡日子加点料,注入满满的pa…

跨域详解与解决方案:从理论到实践的全面指南

目录 1. 跨域是什么?为什么它让人头秃? 为什么跨域问题让人抓狂? 跨域的本质 2. 跨域的罪魁祸首:同源策略与CORS 同源策略的来龙去脉 CORS:跨域的“通行证” 3. JSONP:古老但依然有用的跨域“黑科技” JSONP的原理 JSONP的优缺点 4. 代理服务器:跨域的“中间人…

深入详解:决策树在辅助诊断系统与临床决策支持中的应用及实现细节

🧑 博主简介:CSDN博客专家、CSDN平台优质创作者,高级开发工程师,数学专业,10年以上C/C++, C#,Java等多种编程语言开发经验,拥有高级工程师证书;擅长C/C++、C#等开发语言,熟悉Java常用开发技术,能熟练应用常用数据库SQL server,Oracle,mysql,postgresql等进行开发应用…

【详细笔记】两类曲线积分转换

文章目录参考教程一两类曲线积分的联系参数方程曲线的切线方向余弦参考教程2两类曲线积分之间的关系物理意义解释证明思路参考教程一 3分钟帮你搞定两类曲线积分之间的联系(弧长和坐标) 两类曲线积分的联系 设平面曲线LLL上的第二类曲线积分∫LPdxQdy…

【成品设计】基于STM32F429的云端电子相册

V1《基于STM32F429的云端电子相册》 V1硬件框图:V1功能说明: 支持 softAP 配网。支持 HTTPS 客户端的 GET\POST 请求支持文件系统用于图片的存储。支持 LVGL 自定义 GUI。日历功能。STM32F429文件系统LVGLRGB LCD屏幕。屏幕尺寸480*480. 首次开机交互&am…

网络安全隔离技术解析:从网闸到光闸的进化之路

目录 一、网络安全隔离技术体系 1.1 网络安全隔离技术发展历程 1.2 隔离技术分类矩阵 1.3 核心隔离原理对比 二、网闸技术深度解析 2.1 GAP架构剖析(Guarded Access Point System 安全隔离与信息交换系统) 2.2 技术演进路线 三、光闸技术突破创新…

初识 二叉树

目录树什么是二叉树二叉树的五种状态满二叉树完全二叉树二叉排序树平衡二叉树二叉树的遍历B3642 二叉树的遍历P1305 新二叉树二叉树的深度P4913 【深基16.例3】二叉树深度相关例题训练:二叉树问题树 这是树(拍摄于郑州轻工业大学,第一次郑州轻…

(1)Windows环境下安装Oracle

概述:Oracle数据库是一种网络上的数据库, 它在网络上支持多用户, 支持服务器/客户机等部署(或配置)。服务器与客户机是软件概念:它们与计算机硬件不存在一一对应的关系. 即:同一台计算机既可以充当服务器又可以充当客户机,或者一台计算机只充当服务器或只…

工业数据集成中间件工具OPC Router详细介绍

一、产品概述 OPC Router 是 Software Toolbox 旗下的一款面向工业数据集成与自动化的数据中间件工具,专注于实现各类工业系统之间的数据交互和自动化流程编排。它通过模块化的插件机制,打通 PLC、ERP、MES、数据库、MQTT、REST API 等不同系统之间的数…

消息队列 2.RabbitMQ的基本概念与使用

RabbitMQ 是一款基于 AMQP(Advanced Message Queuing Protocol)协议的开源消息中间件,主要用于实现分布式系统中的消息传递,支持异步通信、系统解耦、流量削峰等场景。在 Java 生态中,RabbitMQ 被广泛应用,…

【web安全】SQL注入与认证绕过

目录 一、SQL注入漏洞 1.1 基础注入原理 1.2 实用注入Payload分类 逻辑绕过型 注释截断型 联合查询型 常见的万能密码-CSDN博客 二、登录绕过实战技巧 2.1 基础绕过手法 2.2 高级绕过技巧 编码绕过 多重注释 参数污染 三、密码重置漏洞利用 3.1 常见漏洞模式 3…

Python适配器模式详解:让不兼容的接口协同工作

一、模式定义与核心思想 适配器模式(Adapter Pattern) 是一种结构型设计模式,它通过创建一个中间层(适配器),将不兼容的接口转换为客户端期望的接口。就像现实中的电源适配器,让不同国家的插头…

微信小程序列表数据上拉加载,下拉刷新

1.上拉加载数据,数据 下一页数据 前面的数据([...this.data.list, ...data.records)2.当用户上拉加载过快时,会不停的调用接口,需要节流阀isLoading3.上拉加载到最后一页的判断,isFinish// pages/list.js…

【树上倍增 LCA DFS 前缀和】P10391 [蓝桥杯 2024 省 A] 零食采购|普及+

本文涉及知识点 C算法:前缀和、前缀乘积、前缀异或的原理、源码及测试用例 包括课程视频 CDFS 树上倍增 LCA P10391 [蓝桥杯 2024 省 A] 零食采购 题目描述 小蓝准备去星际旅行,出发前想在本星系采购一些零食,星系内有 nnn 颗星球&#x…

PDF发票批量打印工具哪个好?高效打印发票的实用工具推荐

开小超市这几年,每月要打几十张进货发票做账,以前打印时总犯愁:有的发票 PDF 太大,打出来字小得看不清;有的又太窄,白白浪费半张纸。试过手动调整,每张都要改缩放比例,累不说&#x…

4G模块 A7680通过MQTT协议连接到华为云

命令说明 基础AT指令 ATi显示产品的标志信息 ATCIMI查询IMSI ATCICCID从SIM卡读取ICCID ATCGSN查询产品序列号 ATCPIN查询卡状态 ATCSQ查询信号强度 ATCGATT查询当前PS域状态 ATCREG查询GPRS注册状态 ATCEREG查询4G注册状态 ATCGPADDR查询PDP地址 ATCMGF选择短信格式 ATCMGS发…

大模型词表设计与作用解析

几乎所有大型语言模型(LLM)都有自己独立的词表(Vocabulary)。这是模型设计和训练过程中的核心组件之一。以下是关于词表的关键点: 1. 词表的作用 分词基础:词表定义了模型如何将输入文本拆分成基本单元&…

(一)Eshop(异常处理中间件/grpc)

文章目录项目地址一、异常处理1.1 自定异常1.2 自定义异常处理中间件1.3 注册中间件二、grpc服务2.1 创建protos1. 打折的protos2. 设置grpc server3. program配置服务4. docker-compose2.2 CRUD1. 查询2.3 测试1. 发起查询请求三、grpc服务消费3.1 创建client1. 添加服务2. 选…