初识Linux—— 基本指令(下)

前言:

本篇继续来学习Linux的基础指令,继续加油!!!

本篇文章对于图片即内容详解,已同步到本人gitee:Linux学习: Linux学习与知识讲解

Linux指令

1、查看文件内容的指令

cat

cat 查看文件内容,直接将内容输出到显示屏文件当中。

常用选项:

指令 - 选项 功能
cat -n 对输出的所有行进编号
cat -b 对非空输出行进编号
cat -s 不输出多行空行(连续多行空行只输出一行)

​ 我们现在有这样一个code.c 文件,内容如下:

现在来看一下,使用cat选项的作用

cat -n

cat -b

cat -s

more

more 指令与cat 使用类似;对于文件内容较短时可以说没什么区别。

当我们需要读取一个内容特别多的文件,我们使用cat 指令就会被刷屏,这是我们可以使用more 指令(只显示满一个屏幕就停止)。

这里现在有一个10000行内容的文件,我们来一下catmore 的区别。

more 查看文件内容时,按q 退出查看

缺点:

more 无法向上查看内容,只能向下查看。

less

  1. less 工具也是对文件或其它输出进行分页显示的工具,应该说是linux正统查看文件内容的工具,功能极其强大。
  2. less 的用法比起 more 更加的有弹性。在more 的时候,我们并没有办法向前面翻, 只能往后面看;但若使用了 less 时,就可以使用(上下键(或者J/K 键) 等按键的功能来往前往后翻看文件,更容易用来查看一个文件的内容!
  3. 除此之外,在 less 里头可以拥有更多的搜索功能,不止可以向下搜索,也可以向上搜索
选项 功能
-i 忽略搜索时的大小写
N 显示行号
/字符串 和**?字符串** 向下上搜索"字符串"和向上搜索"字符串"
q 退出

文件内容怎么多,我们不想要查看全部,就看开头的n行,这时就可以使用head 指令

选项

选项比较简单,只有一个-n 就查看前n行内容(默认n是10)。

tail

tail 和**head** 相对应,tail 查看文件最后的n行内容(默认10行)

知识点:管道(简单了解)

​ 现在,这个10000行内容的文件,我们想要查看第2010行 - 2020行的内容;

当然这里可以先将1 - 2020 行 的内容输出到文件中再查看最后的11行;现在我们不想要这样,我们可以使用这个命令

head -2020 log.txt | tail -11

这样就能看到第2010 - 2020 行的内容了。

对于这一行指令中的 | 其实就是有一个管道,前面查看前2020内容通过管道传给后面,tail -11 查看其最后11行的内容。

2、时间相关的指令

date

​ **date**看当前时间,在使用之前,先来看一个概念------时间戳 (重中之重)

​ 时间戳是一种记录特定时刻的标识数据。它能精确表明某个事件、操作或数据产生、变更的具体时间点,可精确到秒、毫秒等不同程度。常用于计算机系统记录文件操作时间、网络通信验证消息顺序,以及金融交易、电子合同等场景中,保障相关事务时间的准确性、数据的完整性与可追溯性。

概念很长,这里简答描述就是,从1978年1月1日到现在累计的秒数。

date 按照格式输出时间

如果你直接执行date 指令

这里让它按照格式输出

date +%Y-%m-%d_%H:%M:%S

指令格式可以按照自己喜欢的来(中间的-_:

date 获得当前的时间戳

date +%s

根据时间戳查看时间

cal

cal 指令,查看日历;用来显示公历(阳历)日历。公历是现在国际通用的历法,又称格列历,通称阳历。

常见选项

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

选项用法

calcal -3

cal -y

cal -j

注意:

cal 使用之前,需要安装;按照指令如下

yum install -y cal

3、查找相关指令

find

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

语法: find pathname -options

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

常用选项:

-name   按照文件名查找文名进行查找
find ./lesson1 -name "*.txt"      查找./lesson1目录以.txt结尾的文件;
find ./lesson1 -name "[A-Z]*"     查找./lesson1目录以大写字母开头的文件;
find ./lesson1 -name "test*"      查找./lesson1目录以test开头的文件;

which

which 命令主要用来查询指令

知识点:别名

alias 别名,可以给指令另起一个名字。

举例

alias la='ls -a'

4、grep

语法:

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

功能:

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

常用选项:

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

​ 现在 有这样一个文件:现在来看一下grep 即其指令的使用

5、打包压缩相关指令

打包压缩,在Windows下,我们直接使用图形化界面;在Linux中,也有打包压缩的相关指令

zip/unzip

语法:

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

功能:

​ 将目录或文件压缩成zip格式

这里先创建一个路径,方便打包压缩演示

解压缩 unzip

选项:

  1. -r : 递 归处理,将指定目录下的所有文件和子目录一并处理
  2. -d : 将压缩包解压缩到其他目录下

tar

tar 指令也是用来打包压缩的,不打开它,直接看内容

选项:

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

解压缩:

知识补充:文件传输(本地与远程连接Linux)

我们可以远程连接Linux与本地Windows互传文件。

​ 需要szrz 指令,需要安装

yum install -y Lrzsz

rz

sz

将Linux文件传输到本地Windows。

选择路径然后确定即可,将指定文件传输到本地Windows。

6、bc 指令

bc 可以说是Linux下的计算器,可以进行运算。

7、uname 指令

语法

​ uname [选项]

功能

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

补充说明

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

选项

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

8、关机指令

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

**:

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

补充说明

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

选项

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

8、关机指令

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

​ **我的博客即将同步至腾讯云开发者社区,邀请大家一同入驻:**https://cloud.tencent.com/developer/support-plan?invite_code=2oul0hvapjsws

相关推荐
大筒木老辈子13 分钟前
Linux笔记---进程:进程切换与O(1)调度算法
linux·服务器·笔记
小七de尾巴23 分钟前
Linux下X11协议理解
linux·运维·计算机外设
测试小工匠1 小时前
移动端自动化环境搭建_Android
android·运维·自动化
大风吹PP凉1 小时前
45系统调用与内核API
java·linux·服务器
ZHOU_WUYI1 小时前
windows 中docker desktop 安装
运维·docker·容器
hummhumm1 小时前
第 32 章 - Go语言 部署与运维
java·运维·开发语言·后端·python·sql·golang
gma9991 小时前
【shell编程】函数、正则表达式、文本处理工具
linux·c++·正则表达式·bash
liuyunluoxiao1 小时前
Linux基本指令【Linux系统】
linux
我是唐青枫2 小时前
Linux ss 命令详解
linux·运维·服务器
legend_jz2 小时前
【Linux】线程的互斥和同步
linux·运维·服务器·开发语言·笔记·学习·学习方法