【Linux】基本指令(三)

简介: 【Linux】基本指令(三)

1.Linux 基本指令(三)

1.1 date 指令

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


在设定时间方面:


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


时间戳:


时间->时间戳:date +%s

时间戳->时间:date -d@1508749502

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


date +%Y-%m:%d/%H:%M:%S:特殊格式显示时间

0a171e710c0643889a124db726425966.png

date +%s:显示时间戳时间

067ec757b071485ab238eca1f38a741f.png


date +%Y-%m:%d/%H:%M:%S -d@时间戳:将时间戳转换为格式时间

6e073b7a591747818b3c1965a6c22aba.png

1.2 cal 指令

语法: cal [参数] [月份] [年份]


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


常用选项:


-3 显示系统前一个月,当前月,下一个月的月历

-j 显示在当年中的第几天(一年日期按天算,从1月1号算起,默认显示当前月在一年中的天数)

-y 显示当前年份的日历


cal :默认查看本月日历

078a032f27224d94a243ef675f96b921.png

cal 年份:查看一年的日历

2893910ee3084236b2dc639928285d67.png

cal -3 :显示系统前一个月,当前月,下一个月的月历

97f14f721d844d4cbaa117a75cf28cc2.png

1.3 sort 指令

对文本内容进行排序,排序后的顺序类似于类似于strcmp的比较,按照 ascii码值 排序,排序默认升序,-r 选项降序。


sort 文件名:按 ascii 码值排序文件内容并打印,不会影响到文件本身

b2b81bcd74c8453d89acff0b6334d276.png

sort -r 文件名:倒序排序

3c1377dcc02645998903d7a27bcccf61.png

sort 文件名 | uniq:uniq 是对相邻文本内容进行去重,将 sort 文件名的内容放到 管道 中,使用 uniq 进行去重。

17154f65651b4032877b9d2eae5e26f4.png

1.4 find 和 which 和 whereis 指令

1.4.1 find

语法: find pathname -options


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


常用选项:

name 按照文件名查找文件。


拓展:


Linux下find命令在目录结构中搜索文件,并执行指定的操作。

Linux下find命令提供了相当多的查找条件,功能很强大。由于find具有强大的功能,所以它的选项也很多,其中大部分选项都值得我们花时间来了解一下。

即使系统中含有网络文件系统(NFS),find命令在该文件系统中同样有效,只你具有相应的权限。

在运行一个非常消耗资源的find命令时,很多人都倾向于把它放在后台执行,因为遍历一个大的文件系

统可能会花费很长的时间(这里是指30G字节以上的文件系统)。


find在查找时,第一次查找较慢,第二次很快,Linux会把查找的结果缓存起来。


find 路径 -name 查找名称:把从这个路径开始的所有 带有查找名称 的文件查找出来


查找 test.txt:

af845364340c470eb9a4139a32281803.png

1.4.2 which

which 指令: 可以查看指令路径


比如查看 clear 的路径:

99e6e89e2b6c4b1ebdb9765c103133ca.png

我们常用的指令都在 /usr/bin 位置。


1.4.3 whereis

whereis 在指定路径下查找,既可以找到可执行程序,又可以找到手册、安装包、压缩包等文件

191361d6b8344764989290571b95f032.png

1.5 alias 指令

当一条指令过于复杂时,可以使用alias 为文件起别名。


alias 别名=‘指令’:为指令起别名,起别名后,使用别名就相当于这条指令


例如给 ls -a -l -i -n 起别名:

3cdae79b735c44509b2f10a53f9cd5b6.png

unalias 别名:取消别名


再为 alias 取消别名:

83bb4b15cb494f71a6c6247a60e4a55c.png

1.6 grep 指令

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

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


常用选项:

-i :忽略大小写的不同,所以大小写视为相同

-n :顺便输出行号

-v :反向选择,亦即显示出没有 ‘搜寻字符串’ 内容的那一行

grep 为文本行过滤,就是将指定文本内容,按照特定关键字,按行筛选。

grep ‘字符串’ 文件:筛选出 含有该字符串 的内容


例如在文件中匹配 aaa

76286e5f29a24fb58c9f2db1935c78e6.png

grep -v ‘字符串’ 文件:筛选出 不含有该字符串 的内容

59de9040ed3d46f593c81bc8afcddbd1.png

grep -i ‘字符串’ 文件:忽略大小写 正向匹配

e4d810376b4d4766984a594c811dc48a.png

grep -ivn '字符串' 文件 :忽略大小写反向匹配并给上行号

e9cada0dceb640db905c266c22a46e12.png

cat test.txt | grep 'aaa': 通过管道来匹配 aaa

cd59dc7dbbd044f8af747caffa97b533.png

1.7 top 指令

top:相当于 windows 中的任务管理器

452577553ca84c5589784c53d21396f3.png

1.8 zip 和 unzip 指令

语法: zip 压缩文件.zip 目录或文件


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


安装zip指令

600d847ebbff45769a446248079bc121.png

常用选项:

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

zip -r 压缩文件.zip 目录或文件名:压缩一个文件

d0b356a87d66489a9196d735e4c88d63.png

解压会形成同名目录,先删除掉原先目录 tmp :

c0c52fc8fd574801b8cc82c3a23d008f.png

此刻进行解压:

239bca3c08d141b392949c67c7c42fad.png

那么如何解压到指定目录?其实只要在 在解压命令后加上 -d 就可以指定路径解压。


unzip 压缩文件 -d 路径:解压到指定目录


我们在当前目录下再创建一个目录 mydir:

429c47b68fc64968aab50897e430a7db.png

然后将 tmp.zip 解压到 mydir 中,并使用 tree 命令查看是否解压成功:

82949916c5214f69853d126e15ce2a65.png

打包压缩的意义:防止数据、文件丢失并节省空间。


1.9 tar 指令

语法:tar [-cxtzjvf] 文件与目录 … 参数:


常用选项:


-c :建立一个压缩文件的参数指令(create 的意思);

-x :解开一个压缩文件的参数指令!

-t :查看 tarfile 里面的文件!

-z :是否同时具有 gzip 的属性?亦即是否需要用 gzip 压缩?

-j :是否同时具有 bzip2 的属性?亦即是否需要用 bzip2 压缩?

-v :压缩的过程中显示文件!这个常用,但不建议用在背景执行过程!

-f :使用档名,请留意,在 f 之后要立即接档名喔!不要再加参数!

-C : 解压到指定目录


tar 是一个神奇的指令,它既可以 压缩,又可以 解压 。

tar 打包后文件的后缀为 tgz

tar -czf dst src :将 src 中的内容压缩到 dst 中。->打包压缩

tar 命令默认可以文件(包括目录)中的文件全部打包。 tar -czf 的 - 可以省略,但是建议不要省略。




tar -xzf dst:将压缩文件 dst 指定到当前路径

tar -xzf 的 - 可以省略,但是建议不要省略。

8e614b23ea0846649813b8a045b1c807.png

在使用这条指令之前,先把 tmp 删除。因为 tmp 和 解压后的文件重名,虽然解压后 tmp 会被解压后的内容覆盖,我们还是选择删除 tmp 再解压:

1059191b31bb4baf9c7ec512e28040f2.png

tar xzf dst :将 压缩文件 dst 解压到当前路径->解压解包

642a790270274101ba031250874a95d9.png

tar -tzvf dst:不解压文件,查看压缩包 dst 内有什么。->预览

e6cefc600d4a402da7915a0b25248ede.png

tar xzf dst -C 路径:将 压缩文件 dst 解压到指定路径->解压解包

094dddf6e286465daa5982d920873bb9.png

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


1.10 bc 指令

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


在平时,按下 bc 后会阻塞:

a43af23c42e343888ee10a3b6afa6e35.png

此时就可以进行计算,bc 相当于 Linux 中的计算器:

b3609d6a20cb444ebf3cd2d516f32cbb.png

而我们平常也可以通过这种方式,进行 数据计算 :

c635ed8c484640bcb575cd1d0976e643.png

echo 将 1+2+3+4 输送到管道中,bc 直接取管道中的值进行计算。

c635ed8c484640bcb575cd1d0976e643.png

1.11 uname 指令

语法:uname [选项]

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

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


常用选项:

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

uname 可以查看软硬件体系结构。

uname:直接打印 Linux

a9945e6c98674698b6cc29728eea2c82.png

uname -a:显示当前使用的服务器的相关信息

5cfee5df2f8848839e7d74e023e5e45e.png

iZ0jlj1bbn1zk2zv671vzhZ:主机名

5.10.134-13:版本号,5为主版本号;10为次版本号;134为修正次数

al8:al是代称,8为al7

x86_64:代表是64位的体系结构。 =x64 x86=32


uname -r:仅查看体系结构

74475a85f4ce487fa79299d0c59ad0a8.png

5.10.134-13 为 软件体系结构

al8 为 使用的商业发行版本

x86_64 为 硬件体系结构


1.11 history

history 保存历史上输入的最新的1000条指令。

c91cc07849044492b6562eb9387e162d.png

我们可以把 历史指令 通过 history 重定向到文件中,将历史指令保存起来:

d426d05f2662461cbfe416c0500db6ac.png

再使用 less 来查看文件:

6558064dbc6b41ac90bf760fe417c8c7.png

1.12 关机

语法:shutdown [选项] 常见选项:

-h : 将系统的服务停掉后,立即关机。

-r : 在将系统的服务停掉之后就重新启动

-t sec : -t 后面加秒数,亦即『过几秒后关机』的意思

使用 reboot(需要超级用户权限) 可以重启 Linux。

这里只介绍一下,一般对于云服务器上搭建的 Linux 来说是不关机的。


2.热键补充

2.1 ctrl + c

之前简单提了一下ctrl + c 可以处理疯狂刷屏的情况,而今天,将详细介绍一下:


Linux 是支持多行输入的,比如多行输入 ls -a -l -n -i:

54005b03260a45c1832a767203b4bb8d.png

对比原指令:

73fc45bf0b684c11bb483c8812654622.png

如果我们不知道 多行输入这个机制 ,不小心在终端写了个 ls ‘,导致出不来了,怎么办?

94b483af0bc54ac2b1819e90760e7ff7.png

这时就可以使用 ctrl + c 退出命令行,终止前台影响输入指令的程序。

aac21b2a87914fa1af3511dfe3108449.png

这样就可以退出了。


2.2 ↑ && ↓

上下键可以翻阅历史命令:

ef838169cc424850ba6541f6ce32627f.gif

2.3 ctrl + r

在历史命令中搜索:

b1a9729a9a964ad19f286d7fd4c06fce.gif

输入关键字 后会 自动匹配 之前的内容,匹配完成后按 ← 或 → 就可以匹配,使用搜索到的指令。


2.4 ctrl + d

通常代表着键盘输入结束。

adfcff97a5644fdf889a3401106de938.png

最常用的情景就是 退出 xshell 时 使用 exit 或者 不断 ctrl + d 退出。

adfcff97a5644fdf889a3401106de938.png

2.5 tab

输入whi后,tab两次,自动显示全部以whi开头的指令

80d493aef2d845c3bf3665fae39c25c2.png

3.指令拓展

拓展一些指令,有兴趣可以去了解一下:


安装和登录命令: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。

4.总结:

今天我们主要学习了12个基本指令,还了解了一些热键,并进行了指令拓展,难度相比前一篇指令博客高一些。接下来,我们将继续学习Linux的的相关知识。希望我的文章和讲解能对大家的学习提供一些帮助。

当然,本文仍有许多不足之处,欢迎各位小伙伴们随时私信交流、批评指正!我们下期见~

c3ad96b16d2e46119dd2b9357f295e3f.jpg


相关文章
|
2月前
|
存储 Linux
Linux专栏08:Linux基本指令之压缩解压缩指令
Linux专栏08:Linux基本指令之压缩解压缩指令
38 4
|
2月前
|
Linux
Linux专栏09:Linux基本指令之时间日期指令及关机重启指令
Linux专栏09:Linux基本指令之时间日期指令及关机重启指令
57 2
|
2月前
|
Linux
Linux专栏07:Linux基本指令之文件搜索指令
Linux专栏07:Linux基本指令之文件搜索指令
58 2
|
2月前
|
Unix Linux
Linux专栏06:Linux基本指令之文件处理指令
Linux专栏06:Linux基本指令之文件处理指令
51 2
|
2月前
|
人工智能 Linux 索引
Linux专栏05:Linux基本指令之目录处理指令
Linux专栏05:Linux基本指令之目录处理指令
31 2
|
2月前
|
存储 人工智能 Ubuntu
Linux指令学习(一)
Linux指令学习(一)
61 0
|
2月前
|
安全 Unix Linux
【Linux】基本指令
【Linux】基本指令
|
2月前
|
存储 Linux 开发工具
【Linux】常见指令(下)
【Linux】常见指令(下)
|
2月前
|
存储 Linux 网络安全
【Linux】常见指令(上)
【Linux】常见指令(上)
|
2月前
|
Linux 数据安全/隐私保护
Linux专栏04:Linux基本指令之用户管理指令
Linux专栏04:Linux基本指令之用户管理指令
41 0
下一篇
无影云桌面