首页 > 系统相关 >【Linux探索学习】第三弹——Linux的基础指令

【Linux探索学习】第三弹——Linux的基础指令

时间:2024-12-09 14:44:34浏览次数:4  
标签:文件 01 探索 tar 指令 Linux date 压缩包

前言:

在前面我们已经讲了有十几个Linux的基础指令及相关的知识了,今天我们再补充几个重点的基础指令,给基础指令收个尾,为下面的内容做准备

目录

一、date指令

  1. 时间显示
  2. 设定时间
  3. 时间戳

二、cal指令

三、find指令

  1. find指令
  2. which指令
  3. whereis指令

四、grep指令

五、zip/unzip指令

六、tar指令

  1. 打包压缩
  2. 预览
  3. 解压缩包
  4. tar指令与zip/unzip指令的使用场景

七、bc指令

八、uname指令

九、总结

在正式讲解今天的内容之前,建议大家先去看一下我前两篇的内容,看看是否有还未掌握的内容,确认没有后,再返回查看今天内容,确保知识连贯性

一、date指令
在我们平时工作学习中,会经常接触日志的概念,它有利于帮助我们记录工程的进度,并且出错也能帮助我们查找问题的所在,日志中关键的一部分内容就是时间的记录,在Linux中与时间记录有关的指令主要就是date指令,date指令可以帮助我们记录时间

date指令的作用主要体现在三个方面:

  1. 时间显示
    我们可以用date指令来显示当前时间,具体做法就是 date +几个标记,标记可以是以下这些:

%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

比如下面这个例子:

389899cfc0e0fd38619c908407790043_60ebf4b8587d44f29af2631af7dc2411.png

  1. 设定时间
    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. 时间戳
    时间戳是一个很有意思的概念,因为每个地方时间都不一样,计算机为了同一时间,就把1970年午夜作为一个起点,之后每过一秒加1,一直持续到现在

查看当前时间对应的时间戳的方法:date +%s

14e4c11be8525937d529a20e72c79aaf_c023ea4a1af94453bf0559e39f342642.png

查看一个时间戳所对应的时间的方法:date -d@数字

78280b07faf022356a4b36d4f8a35f07_655c91a3e4fb4d3ca61e207451a57e65.png

二、cal指令
cal指令是与日历(阳历)有关的指令,它可以帮助我们查看日历相关的信息

cal指令不加任何选项默认的是查看当前年份当前月份的日历:

86be056fbf7fd42fac0272ec661fb92e_415b8a29d01e4a55a99ed5d51a7f28ae.png

cal指令有以下几个选项:

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

各自的用法如下:

-3选项:

87cc83f0ce3d864c1cb8f9bb8470f055_5c1ed47b95c4432f9a0597b894ff3fe8.png

-j选项:

a92c2877216c4a37430bea9ec229cf72_479d0d24d3c045d4a1b37482087af7b6.png

-y选项:

52fa1ea0bc2eae759d8dcabf725f3441_164f152f2e4d473b8f036739d1a21c39.png

三、find指令

  1. find指令
    Linux中find指令是非常重要的,它能帮助我们在指定路径下查找文件,Linux下find命令提供了非常多的查找条件,功能非常强大,所以它对应的有许多选项,今天我们就先记住它最基本的用法,就是在指定路径下查找文件

比如在家目录下查找test.c文件:

2c5fc8839e8c6d0390c6cdcc32611ea2_531ce9079b6c4838a6ff700f6dcf648e.png

在前面我们讲过Linux下文件的存放形式是类似树状的,而我们普通用户的家目录也只是树上的一个分支,当我们以普通用户的身份查找文件时,我们只能查找我们这个家目录下的文件,其它文件我们是无权查看的,比如下面这种:

30cee2a99281c059c02f4e5e3efe1c4e_16e3a7b6fe0b4362a32aeae07b0fcf78.png

我们发现我们找到的有些路径下的文件后面有:Permission denied,这就是我们没有权限的意思,如果想要查看这种文件我们可以切换到root身份下进行

  1. which指令
    在前面时我们也学过一个有关查找的指令——which指令,这里我们来对比一下,which指令的功能是在搜索指令,一般都是在/usr/bin中,如下:

f667422240178d123f27652b21df80c1_d3400fd0d1044a8ca843d392250e9f4c.png

  1. whereis指令
    除了上面两种查找指令外,其实还有一个whereis指令,这个指令的功能是在系统特定的路径下查找,既可以找到可执行程序,又可以找到手册、安装包、压缩包等

比如我们查找ls指令:

4671bd384b8639189e792edd47f75ff8_91848de8def44614abef22acd399d2f8.png

我们可以发现我们除了找到ls指令外,还找到了在man手册中与ls相关的一个压缩包

四、grep指令
grep指令的功能就是在文件中搜索字符串,并将找到的行打印出来

具体的用法我们结合下面的示例来讲

当我们在一个比较大的文本文件中查找指定内容的所在行时,比如这样一个文件,文件中包含以下内容:

38638b3637a775b45bf001936ec74724_da96b79353314a44b911087f42af3b60.png

对于这样一个文件,我们想查找其中的有些特定行时,就需要借助grep来筛选

假设上面的内容是存放在log.txt文件中,我们要找到所有含 9999 的行

7b42deffddef72207f61d1ef38d8b37a_0e2a2f2930504587a0010f0832aa68c6.png

上面的就是grep最基础的用法

grep也有几个常用的选项:

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

我们可以选择这样一个文件,文件中包含以下内容:

fc2d2200913e4eac3c8a3d86c46929bb_6c9e4ee39ebb4f4a9f76ca7772e76fb5.png

-n选项的用法:

40b31220eceb5aca797512eac4eb000a_6dfa0ed8e0b742e5bbd1950da1e805ba.png

找到包含 ‘world’ 的行,并把它的行号打印出来

-v选项的用法:

8fbd47996dbbec10777daf1131863ba9_4f37d34cb5044ede8ad3e3dc5ab3217c.png

把不包含 world 的行打印出来

-i选项的用法:

44bb730c0d4934e7af3a3810500ee050_59ced86001284a16910f60225f9cf4e9.png

忽略大小写,只要是字母一样且顺序一样就找出来

五、zip/unzip指令
打包和压缩对于我们来说应该并不陌生,我们在平时学习提交作业等东西的时候,就经常需要将一个或几个相关联的文件打包压缩在一起,这样即可以防止这些文件中发生部分丢失,也可以节省内存

zip/unzip指令是Linux下的一种压缩和解压缩的指令,下面我们来看一下它们两个是如何对文件或目录进行压缩和解压缩

起初我们有这样一个文件夹:

6619e44ebc2ff3c6feabd9805b247f99_98eb0562846940a790d9489cae13568c.png

我们把test.c进行压缩:

f6cde3e1201c803b2692a539a18eb2fc_a8c16e735d214030946f2a8f6606c4c6.png

压缩后我们就可以发现目录下多了一个test.c的压缩文件,我们把原来的test.c删除掉

b93594c76ae2485798dcae83373c459a_850d6dd082f9424e9442a97dfb1e9dee.png

删除掉原来的test.c之后我们对这个.zip文件放入106目录下,并且进行解压缩

76a265ed7b0c72d8925f14245742c92d_5740606385f648d6921352b06f8a44f3.png

我们可以发现此时.zip文件就已经在106目录下,且解压缩形成的新文件test.c也在

显示test.c文件中的内容:

c567b5286ee87221e6f7798201c11b39_d030ec0772034f80b4f4052baa2b0dd0.png

可以看到与原来的test.c文件中的内容一样,所有整个压缩和解压缩的过程没有问题

zip指令也有一个常用的选型:

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

这个选项跟前面有些指令的递归选项使用场景一致,就不再赘述了

六、tar指令
tar指令也是Linux中压缩和解压缩的一种指令,但是它与zip/unzip指令还是有所不同的,下面我们先来看一下它的用法

tar指令的相关变形和作用有很多,我们主要记住下面三个就行

  1. 打包压缩
    tar指令与打包压缩有关的是:tar caf 压缩包名 文件名(可以是多个文件)

用法如下:

比如这样一个文件夹:

fed16b6a6643f00f130b087f9a2f3b1e_c7581cefa27345078addb63b2948c8e4.png

里面有三个目录和一个文件,我们可以把它们打包在一起

6917393007d2219288f495831fc5ae58_ef12465b45114726b8b38b4bdc9200a8.png

此时就有一个压缩包dir.tar.gz,里面就压缩的这三个 目录和一个文件,同时我们还可以观察到这个压缩包的后缀 .tar.gz ,这个后缀之所以这样命名是有意而为之的,其中 .tar 是tar指令压缩而来的意思,.gz 是压缩文件的意思,我们也可以把这个后缀简写成 .tgz

  1. 预览
    tar指令还可以直接对压缩包里面的内容进行预览,这有点像windows下的压缩包预览功能(就是一个压缩包,我们可以点进去看一下里面的文件的文件名和基本信息)

tar指令与预览相关的是:tar tzf 压缩包名

用法如下:

就比如上面的那个压缩文件,我们就可以对它进行预览

7a7b5c4f7736f65db83962e10917ccb5_da582ffe38cc47b6affbed688fbf30ca.png

我们可以看到即使我们没解压,但是我们也可以预览里面的文件都有哪些

  1. 解压缩包
    tar指令与解压缩包有关的:tar xzf 压缩包名

我们可以把上面的原来的文件先删掉,只留下压缩包文件

1d05410def9de35eb7108e9f96682a1e_64b73d9130e04f5e9aeb8ab17222e993.png

然后对压缩包进行解压

4b1c40935a025611381895846f414150_54f6a4e6ab774f55af248da3ae1ebc9b.png

解压后我们就可以发现里面的文件都解压出来了,且与原来的文件一样

上面的是解压到同一个路径,我们也可以把它解压到指定路径下,

方法是:tar xzf 压缩包名 -C 指定路径

  1. tar指令与zip/unzip指令的使用场景
    一般在纯Linux环境下使用我们更建议使用tar指令,如果是希望我们打包和压缩的文件在windows下也可以很方便的互通,那么我们更建议zip/unzip指令

标签:文件,01,探索,tar,指令,Linux,date,压缩包
From: https://www.cnblogs.com/ratelcloud/p/18594860

相关文章

  • Linux系统中禁用用户登录
    管理Linux系统上的帐户是系统管理员的一项重要任务。一个常见的任务是禁用帐户,由于各种原因可能需要禁用帐户,例如当员工离开公司或出于安全目的需要临时禁用访问时。本指南将以简单易懂的步骤引导您完成在Linux系统上禁用帐户的过程。Step1:打开终端按 Ctrl+Alt+T 打开......
  • Linux操作文件和文件夹的常用基础命令
    文件和文件夹的查看ls:列出当前目录中的文件和文件夹。ls-l:以长格式列出文件信息,包括权限、所有者、大小、修改时间等。ls-a:显示隐藏文件(以 . 开头的文件)。ls-h:以人类可读的格式显示文件大小。文件和文件夹的创建touchfilename:创建一个新的空文件。mkdirdirn......
  • linux 网卡配置
    linux网卡可以通过命令和配置文件配置,如果是桌面环境还可以通过图形化界面配置.1.ifconfig(interfacesconfig)命令方式通常需要以root身份登录或使用sudo以便在Linux机器上使用ifconfig工具。依赖于ifconfig命令中使用一些选项属性,ifconfig工具不仅可以被用来简单地获取网络接......
  • linux 通过 df 、du 查看磁盘大小命令的基本使用
    1.df的介绍和使用df以磁盘分区为单位查看文件系统,可以获取硬盘被占用了多少空间,目前还剩下多少空间等信息。例如,我们使用df-h命令来查看磁盘信息,-h选项为根据大小适当显示:在这里插入图片描述1.1显示内容参数说明Filesystem:文件系统Size:分区大小Used:已使用容量......
  • Linux 关于df 后目录异常大,却找不到实际大文件的解决办法
    一、通常情况下,有些进程仍在执行已删除文件会导致目录异常大,可以通过以下命令处理。#查看哪些进程占用磁盘空间lsof|grepdeleted或者lsof+L1#杀死占用已删除文件的进程kill-9<pid>二、由于根目录底下有个test子目录中有大文件未删除,就在test目录挂载另一块磁盘;此时......
  • 探索PygmalionAI与Aphrodite Engine:开源推理引擎的强大组合
    #探索PygmalionAI与AphroditeEngine:开源推理引擎的强大组合##引言在当今的AI和机器学习世界中,开源模型和工具正在迅速改变行业格局。PygmalionAI是一家致力于支持开源模型发展的公司,特别是在推理端点服务方面。本文将深入探讨PygmalionAI的AphroditeEngine,并展示如......
  • Linux中-vvv详细输出命令
    在Shell脚本中,有时会看到某些命令后面加上`-vvv`或类似的选项。这个选项的作用通常与命令的**调试模式**或**详细输出**相关。不同的命令和工具对于选项的解释和处理方式不同,因此`-vvv`的具体含义取决于它所跟随的命令。###一般来说,`-v`和`-vvv`的含义如下:1.*......
  • RAG综述:探索检索增强生成技术的多样性与代码实践
    当前LLM受限于其训练时所用的固定数据集,难以处理私有或最新的信息,且可能存在“幻觉”现象,即提供错误但看似合理的答案。为了解决这些问题,检索增强型生成(Retrieval-AugmentedGeneration,简称RAG)框架应运而生。RAG(微软最新研究:RAG(Retrieval-AugmentedGeneration)的四个级别深度解......
  • Linux系统修改网络配置的几种方法参考
    Linux操作系统凭借其稳定性和灵活性,成为服务器和个人计算机上不可或缺的一部分。网络配置是Linux系统管理中的一个重要方面,直接关系到系统的连通性和安全性。下面详细介绍几种在Linux系统中修改网络配置的方法,大家可以根据自己的需求选择合适的参考方案。命令行工具(CLI)对于......
  • 火山引擎数据飞轮最新活动:结合大模型能力,探索金融行业数智化落地新可能
    12月7日,火山引擎数据飞轮泛金融行业沙龙在苏州举办,超20家互联网金融、消费金融企业科技负责人齐聚探讨新环境下,“数据飞轮”模式能够为行业带来哪些新的探索和机会。 数据飞轮是火山引擎在2023年推出的企业数智化升级新模式,它强调企业内部需要通过充分的数据消费,即使用数据,来......