【Linux】Linux基本指令3

目录

1.date指令

2.cal指令

3.find指令:(灰常重要) -name

4.grep指令——行文本过滤工具

5.zip/unzip指令:

6.tar指令(重要):打包/解包,不打开它,直接看内容

7.bc指令:

8.uname –r指令:

9.重要的几个热键[Tab],[ctrl]-c, [ctrl]-d

10.关机

 11.shell命令以及运行原理


本节开始我们使用普通用户的账号来学习linux,不能使用root账号,本专栏后面的学习都是用普通账号

下面开始正式开始

我们先来了解一下日志

日志:在日常生活中,日志是指类似日记的日常记录。随着互联网的迅猛发展,日志被越来越多地用于指代机器数据。

机器数据通常由系统或程序自己产生。

程序开发者为监控程序执行过程,会让程序在执行完一步或几步操作后输出相应的执行结果,该结果通常会记录系统或程序在什么时间、哪个主机、哪个程序上执行了什么操作及出现了什么问题等信息,这些信息被称为机器数据,即日志(Log)。

当系统、程序或硬件设备出现原因不明的错误或故障时,通过查看日志能够快速定位错误或故障的原因

日志:时间,日志等级,日志具体时间,其他时间 

1.date指令

data是用来显示时间的

date 指定格式显示时间:

 date +%Y:%m:%d

date 用法:

date [OPTION]... [+FORMAT]

1.1.在显示方面,使用者可以设定欲显示的格式,格式设定为一个加号后接数个标记,其中常用的标记列表如下

  • %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

我们看几个例子 

分隔符是可以自己设置的,不能是空格

我们再看看几个例子 

1.2.在设定时间方面——要root账号

  • 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″ //这样可以设置全部时间

1.3.时间戳

什么是时间戳?

时间戳是指格林威治时间1970年01月01日00时00分00秒(北京时间1970年01月01日08时00分00秒)起至现在的总秒数 。

时间戳是使用数字签名技术产生的数据,签名的对象包括了原始文件信息、签名参数、签名时间等信息。时间戳系统用来产生和管理时间戳,对签名对象进行数字签名产生时间戳,以证明原始文件在签名时间之前已经存在。

由此而知——时间戳只会单调递增,这在计算机世界里是非常重要的

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

我们看看时间戳

 我们也能把时间戳转换成年月日

我们加点要求

 依次类推

这个是北京时间哦!!我们看上面时间戳的概念 

有人就想问了,这个时间戳会溢出吗?

2.cal指令

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

命令格式:

cal [参数][月份][年份]

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

常用选项:

举例:

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

我们看看

可以直接查看任意一年全年的日历

3.find指令:(灰常重要) -name

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

语法:

 find pathname -options

功能: 用于在文件树种查找文件,并作出相应的处理(可能访问磁盘)

常用选项:

  • -name   按照文件名查找文件。 

 

我们使用find从家目录开始递归式的查找名字叫test.c的文件 

~是家目录的意思哦 

我们可以从家目录开始递归式寻找文件格式是.c的文件

 依次类推,各种也能找

我们也能使用find查找指令

 我们不知道具体的文件夹,我们可以像下面这样搜索

Permission denied是个问题,这个是普通用户的权限问题,系统不让你查

用root账号就不会有这种问题 

find很重要,我们可以使用man find去了解更多的

 which也是查找,在系统的指令路径下进行指定的搜索

/usr/bin

它是专门用来搜索指令的

whereis也是查找

 它是介于find和which之间,它可以在系统特定路径下,既可以找到可执行程序,又可以找到安装包,压缩包等

4.grep指令——行文本过滤工具

grep参考文档:linux grep命令详解 - ggjucheng - 博客园 (cnblogs.com)

语法:

grep [选项] 搜寻字符串 文件

功能: 在文件中搜索字符串,将找到的行打印出来

常用选项:

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

为了演示这个效果,我们先创建一个大文件 

100000个数字!!!!!!

我们使用这个去查找,要查到猴年马月

我们就可以使用grep指令了

 

所有带9的都给你找出来了 

我们加几个9

我们继续展示一下

-v是反转的意思

 

 -n就是打印行数

 -i是忽略大小写

这个可以跟管道结合起来写

 grep的用处举例

5.zip/unzip指令:

我们先来了解打包和压缩

 打包和压缩

打包:

压缩

为什么要打包和压缩?

Linux充服务器的时候,也需要使用打包压缩的知识 

 语法:

zip 压缩文件.zip 目录或文件

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

常用选项:

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

 我们先做准备

我们直接把这个d1打包

在此之前,我们要确保我们的系统配置了zip

要去root账号里安装哦!!!!

sudo yum install zip

这个是安装zip指令的安装指令

我们当前在普通用户,怎么快速的切换root账号?

很简单,注意要输入密码

我们怎么退回去普通用户呢?

 我们把它放当上级目录里去

我们现在开始将它解压 

我们解压出来的只有d1这个文件夹,它麾下的目录全没有复制过来

那怎么办呢? 

 

不就成功了吗!!! 

如果我们想把108_class和d1.zip一起压缩进去,只需要再写这个即可

这个时候这个zip就有这么多文件了 

我们还可以指定解压路径

6.tar指令(重要):打包/解包,不打开它,直接看内容

tar [-cxtzjvf] 文件与目录 .... 参数:

案例:

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

我们以下面这个为例子

我们可以使用tar来打包和压缩

打包和压缩的后缀格式非常多

指令很多——我们不必记住所有指令,我们只需在要用的时候去查即可

我们只讲最常用的

 这个就是将d1目录,log.txt,test.c文件打包成一个code.gz格式的文件

我们直接解压 

我们只讲3种组合

打包成tgz的后缀

tar czf XXX      ——打包压缩
tar tzf XXX.tgz      ——预览
tar xzf XXX.tgz    ——解压解包

 我们要记忆住这3种即可

我们只需要知道这个后缀格式即可,不够用的再去搜

默认情况下,tar是解压在当前目录下。

我们可以指定解压路径

我们在解压指令后面加-C选项就可指定解压路径

7.bc指令:

这个就是linux的计算器

bc命令可以很方便的进行浮点运算 

 可以配合echo使用

8.uname –r指令:

语法:

uname [选项] 

功能: uname用来获取电脑和操作系统的相关信息。

补充说明:uname可显示linux主机所用的操作系统的版本、硬件的名称等基本信息。

常用选项:

  • -a或–all 详细输出所有信息,依次为内核名称,主机名,内核版本号,内核版本,硬件名,处理器类型,硬件平台类型,操作系统名称 

查系统版本——和windows的差不多

 

x86_64和x64是一样的 

我们可以查磁盘的情况

9.重要的几个热键[Tab],[ctrl]-c, [ctrl]-d

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

 这些是特别常用的

我们先讲tab键——命令补全

我们输入w,然后就按Tab键,就有下面这样子

我们再试试 

我们输入下面那个,然后按tab键 

按下tab键发现它直接给我们补全了 

我们看看ctrl+r——历史命令搜索

我们直接点击ctrl+r

我们随便输入一个a,就发现了 

 

我们还可以通过history指令来搜索历史指令

Linux默认记录最新的1000条

ctrl+c——程序终止 

上面的搜索界面,我们可能担心出不来

我们可以直接按ctrl+出来

 ctrl+d——退出

我们可以直接ctrl+d,然后我们就回到云服务器登录界面了

再ctrl+d直接关闭了Xshell 

10.关机

Linux操作系统(我指的是服务器),永不关机 

语法:

shutdown [选项] **

常见选项:

  • -h  : 将系统的服务停掉后,立即关机。
  • -r: 在将系统的服务停掉之后就重新启动
  • -t seconds : -t 后面加秒数,亦即『过几秒后关机』的意思

 这里我们不做演示,懂得都懂

以下命令作为扩展:

  • 安装和登录命令:login、shutdown、halt、reboot、install、mount、umount、chsh、exit、last;
  • 文件处理命令:file、mkdir、grep、dd、find、mv、ls、diff、cat、ln;
  • 系统管理相关命令:df、top、free、quota、at、lp、adduser、groupadd、kill、crontab;
  • 网络操作命令:ifconfig、ip、ping、netstat、telnet、ftp、route、rlogin、rcp、finger、mail、 nslookup;
  • 系统安全相关命令:passwd、su、umask、chgrp、chmod、chown、chattr、sudo ps、who; 
  • 其它命令:tar、unzip、gunzip、unarj、mtools、man、unendcode、uudecode。

这些我们在后续学习过程中会讲 

 11.shell命令以及运行原理

Linux严格意义上说的是一个操作系统,我们称之为“核心(kernel)“ ,但我们一般用户,不能直接使用kernel。 而是通过kernel的“外壳”程序,也就是所谓的shell,来与kernel沟通。

如何理解?为什么不能直接使用kernel?

我们所有的指令,最终都要在OS内部运行,但是直接使用OS难度非常高,我们用户不能直接和操作系统打交道,我们只能通过命令行来进行交互,和OS沟通的之间的桥梁就是命令行解释器 

指令——>命令行解释器——>os 

命令行解释器存在的意义:

  • 进行命令行解释
  • 保护OS,对于用户的非法请求,直接拦截 

命令行解释器是个统称

在Linux下叫    命令行,bash/sh,   shell

在Windows下叫   图形化界面 

从技术角度,Shell的最简单定义:命令行解释器(command Interpreter)主要包含:

  • 将使用者的命令翻译给核心(kernel)处理。
  • 同时,将核心的处理结果翻译给使用者。

对比windows GUI,我们操作windows 不是直接操作windows内核,而是通过图形接口,点击,从而完成我们的 操作(比如进入D盘的操作,我们通常是双击D盘盘符.或者运行起来一个应用程序)。

shell 对于Linux,有相同的作用,主要是对我们的指令进行解析,解析指令给Linux内核。反馈结果在通过内核运 行出结果,通过shell解析给用户。

帮助理解:

  • 如果说你是一个闷骚且害羞的程序员,那shell就像媒婆,操作系统内核就是你们村头漂亮的 且有让你心动的MM小花。你看上了小花,但是有不好意思直接表白,那就让你你家人找媒婆帮你提 亲,所有的事情你都直接跟媒婆沟通,由媒婆转达你的意思给小花,而我们找到媒婆姓王,所以我们叫 它王婆,它对应我们常使用的bash。

指令运行的原理

我们这里只简单的了解了解它

zs_108是用户名,@后面是主机名,再后面的~是当前目录,$+后面是命令行提示符

上面的这些一起叫做bash命令行

我们输入指令的过程本质就是输入字符串

到后面我们学习的进程的知识之后我们就会指到,上面一条指令的执行就是一个进程

指令的本质就是编译好的可执行程序

到这里,我们指令的学习暂告一段落,我们在后面的学习中会慢慢的学习更多的指令

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

SpringBoot六种API请求参数读取方式

SpringBoot六种API请求参数读取方式 同步请求和异步请求 同步: 指单线程依次做几件事异步: 指多线程同时做几件事 同步请求: 指客户端浏览器只有一个主线程, 此线程负责页面的渲染和发出请求等操作, 如果此主线程发出请求的话则停止渲染而且会清空页面显示的内容 直到服务器响…

3d渲染的常用概念和技术,渲染100邀请码1a12

之前我们介绍了3D渲染的基本原理和流程,这次说下几个常用概念和技术。 3D渲染中涉及到很多专业的概念和技术,它们决定了渲染质量和效果,常用的有以下几个。1、光线追踪 光线追踪是一些专业渲染器(如V-Ray和Corona等)…

算法思想总结:哈希表

一、哈希表剖析 1、哈希表底层:通过对C的学习,我们知道STL中哈希表底层是用的链地址法封装的开散列。 2、哈希表作用:存储数据的容器,插入、删除、搜索的时间复杂度都是O(1),无序。 3、什么时…

Android HIDL接口添加

一.HIDL介绍 HIDL的全称是HAL interface definition language(硬件抽象层接口定义语言),是Android Framework 与Android HAL之间的接口。HIDL 旨在用于进程间通信 (IPC),进程之间的通信 采用 Binder 机制。 二.HIDL 与AIDL 的对…

客户文章|难能可贵,非模式生物的功能研究与创新

菜豆(Phaseolus vulgaris),又名四季豆、芸豆、油豆角,是全球第一大豆类蔬菜,我国是世界上最主要的菜豆生产国和销售国。在田间生产过程中,菜豆常面临着各种生物和非生物逆境的胁迫,对其产量品质…

FOC - BLDC六步换相驱动原理

文章目录 1 . 前言2 . 电机旋转原理3 . BLDC特点4 . BLDC反电动势投影位置5 . BLDC换相时刻6 . BLDC换相注意事项7 . 小结 【全文大纲】 : https://blog.csdn.net/Engineer_LU/article/details/135149485 1 . 前言 无刷直流电机在这里区分为两种,一是永磁无刷直流电…

【Linux-LCD 驱动】

Linux-LCD 驱动 ■ Framebuffer 简称 fb■ LCD 驱动程序编写■ 1、LCD 屏幕 IO 配置■ 2、LCD 屏幕参数节点信息修改■ 3、LCD 屏幕背光节点信息■ 4、使能 Linux logo 显示 ■ 设置 LCD 作为终端控制台■ 1、设置 uboot 中的 bootargs■ 2、修改/etc/inittab 文件 ■ LCD 背光…

python前端streamlit模型部署

简单介绍使用前端streamlit框架快速部署本地模型: 1、模型训练: import pandas as pd # 流程整合 from sklearn.pipeline import make_pipeline, Pipeline # 数据处理 from sklearn.impute import SimpleImputer from sklearn.preprocessing import Min…

探索 Android Studio 中的 Gemini:加速 Android 开发的新助力

探索 Android Studio 中的 Gemini:加速 Android 开发的新助力 在 Gemini 时代的下一篇章中,Gemini融入了更多产品中,Android Studio 正在使用 Gemini 1.0 Pro 模型,使 Android 开发变得更快、更简单。 Studio Bot 现已更名为 And…

深度学习知识与心得

目录 深度学习简介 传统机器学习 深度学习发展 感知机 前馈神经网络 前馈神经网络(BP网络) 深度学习框架讲解 深度学习框架 TensorFlow 一个简单的线性函数拟合过程 卷积神经网络CNN(计算机视觉) 自然语言处理NLP Wo…

C# WinForm —— 23 Timers.Timer 组件介绍与使用

1. 简介 System.Timers.Timer 计时器 轻量 每隔一段时间触发Elapsed事件,执行操作(不是由UI线程执行的),即使事件中执行了比较耗时的操作,也不会造成 UI 失去响应 如果要获取服务器的计时功能的话,可以使用System.Timers.Timer …

unity2020打包webGL时卡进程问题

我使用的2020.3.0f1c1,打包发布WEB版的时候会一直卡到asm2wasm.exe这个进程里,而且CPU占用率90%以上。 即使是打包一个新建项目的空场景也是同样的问题,我尝试过一直卡在这里会如何,结果还真打包成功了。只是打包一个空场景需要20…

C++(入门基础版本)

1,什么是C C 是一种通用的、面向对象的编程语言,是 C 语言的一个超集,也就是说,任何有效的 C 程序都是有效的 C 程序。C 通过添加诸如类和对象、继承和多态等概念,扩展了 C 语言的功能,使其更适用于大型软…

CSS学习笔记目录

CSS学习笔记之基础教程(一) CSS学习笔记之基础教程(二) CSS学习笔记之中级教程(一) CSS学习笔记之中级教程(二) CSS学习笔记之中级教程(三) CSS学习笔记之高级…

国产身份域管架构图集合(信创政策AD域替换必看)

几类典型架构 双机架构 单点单机房 集群架构 多点单机房 两地三中心架构 多点多机房 多地分布式架构 多点多机房 全栈信创方案架构,欢迎探讨交流~

[数据集][目标检测]喝水检测数据集VOC+YOLO格式995张3类别

数据集格式:Pascal VOC格式YOLO格式(不包含分割路径的txt文件,仅仅包含jpg图片以及对应的VOC格式xml文件和yolo格式txt文件) 图片数量(jpg文件个数):995 标注数量(xml文件个数):995 标注数量(txt文件个数):995 标注类别…

校园导航系统C++

制作一个简单的大学城导航系统,根据用户指定的起点和终点,求出最短路径长度以及具体路径。 项目要求: 1)程序与数据相分离,地图中的所有数据都是从文件读入,而不是写在代码中 2)最短路径算法…

抖音电商经验分享,揭秘做好抖店的七个关键细节,不容忽视

大家好,我是电商花花。 随着抖音电商和大量商家的不断入驻,大家对于电商的玩法也逐渐变多,拿到结果的商家也是越来越多,更多的做店玩法和步骤被更多人熟知。 现在想要做好抖店,其实也没有想象中那么复杂和困难。 新…

网络安全基础技术扫盲篇名词解释之“证书“

用通俗易懂的话说: 证书就好比是一张身份证(类似,但不完全相同),用来证明一个网站的身份是否可信。就像你要确认一个陌生人的身份需要看他的身份证一样,电脑在连接一个网站时,也会查看网站的证…

停车场车位引导系统方案升级实施步骤流程是什么,有什么注意事项

停车场车位引导系统是一种现代化的停车管理系统,它通过实时监测车位占用情况,并向驾驶员提供准确的空闲车位导航信息,从而提高停车场的使用效率和用户体验。随着城市交通的快速发展和车辆数量的不断增加,停车场车位引导系统已成为…