目录
- 1. 前言
- 2. 常见指令
- 2.1 重定向
- 2.1.1 `>`
- 2.1.2 `>>`
- 2.1.3 `<`
- 2.2 与文件有关指令
- 2.2.1 `more`
- 2.2.2 `less` (推荐使用)
- 2.2.3 `head`
- 2.2.4 `tail`
- 2.2.5 `wc`
- 2.2.6 `|`
- 2.3 `find`
- 2.4 `grep`
- 3. 时间相关的指令
- 3.1 `data`
- 3.2 时间戳
- 3.3 `cal`
- 4. `zip/unzip`
1. 前言
继上前面篇对Linux的一些指令做了一些初步介绍后,有需要可以在主页里面查看,今天来继续分享其它有关的指令。
首先还是得先打开xshell,连接上的云服务器。
话不多说,正片开始。
2. 常见指令
在Linux中一切皆文件。
Linux可以以统一的方式来进行文件/设备访问。
向显示器上输出hello。
对于任何文件而言,就是读和写方法。
而对于显示器:
显示器设备->显示器文件–>向显示器打印,向显示器写入
2.1 重定向
2.1.1 >
>
:输出重定向
作用:
- 创建文件,清空文件
- 本来应该显示到显示器上的数据,显示到文件中。
注意:每次进行重定向,都会从文件开始写入文件内容。
我们可以看见创建一个文件不仅仅可以使用touch
,还可以使用>加文件名
。
这个文件默认是空的。
它既可以用来创建一个文件,也可以用来清空一个文件。
每次重定向都会先清空再写入。那怎么才能做到不清空,直接加呢?
使用下面的命令。
2.1.2 >>
在c语言中。
>>
追加重定向
它也是写入。
2.1.3 <
<
输入重定向
读数据本来应该键盘上读取,现在从普通文件log.txt上读取。
总结为下面三个命令:
2.2 与文件有关指令
2.2.1 more
more
可以打印一满屏输出,就停下来,让用户下翻,逐行进行阅读。
语法:more [选项][文件]
功能:more命令,功能类似 cat
常用选项:
-n 对输出的所有行编号
q 退出more
按回车就能继续下翻,但是不能上翻。
2.2.2 less
(推荐使用)
less
可以查看大文本,逐行查
可以按上下键
less与more类似,但使用less可以随意浏览文件,而more仅能向前移动,却不能向后移动,而且less在查看之前,不会加载整个文件。
- less工具也是对文件或其它输出进行分页显示的工具,应该说是linux正统查看文件内容的工具,功能极其强大。
- less 的用法比起 more 更加的有弹性。在 more 的时候,我们并没有办法向前面翻, 只能往后面看
- 但若使用了 less 时,就可以使用 [pageup][pagedown] 等按键的功能来往前往后翻看文件,更容易用来查看一个文件的内容!
- 除此之外,在 less 里头可以拥有更多的搜索功能,不止可以向下搜,也可以向上搜。
2.2.3 head
head
提取文件的头
显示文件默认前10行。
提取文件的前5行,在head后面加-5
提取文件的前20行
2.2.4 tail
tail 命令从指定点开始将文件写到标准输出。
使用tail命令的-f选项可以方便的查阅正在改变的日志文件,tail -f filename会把filename里最尾部的内容显示在屏幕上,并且不但刷新,使你看到最新的文件内容。
tail
提取文件的尾
选项:-n<行数> 显示行数
默认提取文件的倒数10行
提取文件的倒数5行
在上面的指令中,我们只能查找头和尾,那怎么找中间部分?
2.2.5 wc
wc
统计文本中的行数
在big.txt中有10000行
2.2.6 |
|
管道,用来级联命令
就像生活中的自来水管道,
有入口和出口,用来传输资源。
在输出头前8010行之后,在这个里面输出后10行。
级联多条指令,统计输出的行数
2.3 find
find
用于在文件树种查找文件,并作出相应的处理。
- Linux下find命令在目录结构中搜索文件,并执行指定的操作。
- Linux下find命令提供了相当多的查找条件,功能很强大。由于find具有强大的功能,所以它的选项也很多,其中大部分选项都值得我们花时间来了解一下。
- 即使系统中含有网络文件系统( NFS),find命令在该文件系统中同样有效,只你具有相应的权限。
- 在运行一个非常消耗资源的find命令时,很多人都倾向于把它放在后台执行,因为遍历一个大的文件系统可能会花费很长的时间(这里是指30G字节以上的文件系统)。
2.4 grep
grep
在文件中搜索字符串,将找到的行打印出来。
在big.txt中找包含999的字符串
常用选项:
-i :忽略大小写的不同,所以大小写视为相同
-n :顺便输出行号
-v :反向选择,亦即显示出没有 ‘搜寻字符串’ 内容的那一行
在simple.txt中查找含xxx的行
在simple.txt中查找不含xxx的行
在simple.txt中查找含xxx的行,不区分大小写
3. 时间相关的指令
3.1 data
data
显示时间
date 指定格式显示时间: date +%Y:%m:%d
可以使用格式化输出
**%H : 小时(00…23)
%M : 分钟(00…59)
%S : 秒(00…61)
%d : 日 (01…31)
%m : 月份 (01…12)
%Y : 完整年份 (0000…9999) **
显示年月:
我们可以加-方便查看
显示年月日
显示年月日,时分秒
时间在计算机中是十分重要的,在记录日志时,是离不开时间的。
3.2 时间戳
时间->时间戳:date +%s
随着时间的推移会增大
时间戳->时间:date -d@1508749502
Unix时间戳(英文为Unix epoch, Unix time, POSIX time 或 Unix timestamp)是从1970年1月1日(UTC/GMT的午夜)开始所经过的秒数,不考虑闰秒。
3.3 cal
cal
用于查看日历等时间信息,如只有一个参数,则表示年份(1-9999),如有两个参数,则表示月份和年份
cal命令可以用来显示公历(阳历)日历。公历是现在国际通用的历法,又称格列历,通称阳历。“阳历”又名“太阳历”,系以地球绕行太阳一周为一年,为西方各国所通用,故又名“西历”。
常用选项:
-3 显示系统前一个月,当前月,下一个月的月历
-y 显示当前年份的日历
4. zip/unzip
zip:将目录或文件压缩成zip格式
unzip:解压
语法: zip 压缩文件.zip 目录或文件
此时将1001压缩打包到100.zip中
新建一个111test将打包后的100放在里面。
然后解压
但是发现里面的内容没有打包。
所以要加上-r
解压后看看
此时全部都打包过来了。
总结就是下面:
如果有错误,欢迎指出,大家一起进步。