5.2mv重命名
mv 原来文件名 不存在的文件名。就可以改变名字。
六、 echo&&printf&&cat
6.1 echo指令
echo指令的功能有:
1、显示信息到屏幕,这一点和printf一样:
2、echo可以初始化创建一个文件,比如我们可以touch一个空文件,也可以echo一些内容到一个普通文件:
这里提到的cat指令后面还会细说。
6.2 >重定向
>也是一个指令叫重定向指令,>文件名直接创建一个大小为0的文件 ,它的作用和touch差不多。
至此,我们创建文件的方式有了三种:
1、>创建一个大小为0的普通文件;
2、touch创建一个空白文件;
3、echo可以初始化一个普通文件,也可以打印信息到屏幕。
七、显示文本内容指令
7.1 cat&&tac指令
①cat指令
cat可以把文件的内容显示出来。
下面博主输入一个XShell的脚本指令:
这段指令需要 严格控制空格,否则有很大程度完成不了!!
cat-n 指令,显示文本行号:
②tac指令
tac 指令的功能恰好和cat反过来,它可以逆序文本。
但是,对于一行文本,tac无法逆序!!
7.2 nano指令
nano指令也可以查看这一万行文本。
其实我们还可以vim查看文本,但是初学者容易进去后退不出来,所以建议还是nano指令查看。
nano指令还有很多功能,这里只做了简单介绍:比如查找,替换,和跳转到指定行数等功能,它功能比cat多得多,操作比vim简便,非常适合新手。
可能有的老铁XShell上没有nano指令,需要安装:
7.3 more指令
① more指令比较适合查看大文本:
②more指令还可以对前n行显示
③查找具体文本
7.4 less指令
①less+文件名 可以查看文本
②less查找
less比more更好的地方在于它可以按键盘上下键翻阅,而more只能向下翻阅。按q退出,less也可以查找:
但是,less不支持查看指定行数的文本操作。
③less加行号
less和more比较:
1、less可以按键盘上下键翻阅,而more只能向下翻阅
2、less和more都可以查找文本,但是less查找到后会给予高亮。
3、但是,less不如more的是不支持查看指定行数的文本操作。
4、less可以像cat -n一样给文本加行号。
7.5 head&&tail指令
more/less指令我还觉得不够方便,比如我就想查看最开始或最后几行文本,more和less都不够方便,于是就有了head和tail指令。
①head指令
②tail指令
7.6怎么拿中间文本?
讲了拿到头和尾的指令,那么我想拿到中间的文本内容,怎么操作呢?
比如我想拿到[800,809]这10行的文本怎么办呢?
①临时文件的方案
②不创建临时文件的方案
7.7了解管道:|
| 称为管道,它是一个类似于容器的东西,用于传输资源,这里我们只学习管道的命令行操作,后面到了进程间通信还会介绍管道的实现。
我们来分析刚才是怎么使用的管道:
head将前810行文本放到了管道,tail将管道内后十行打印。通过管道,head将文本内容传给了tail去操作。
了解管道之后,我们来进行这样一个操作,将中间十行[600,609]并逆置,并提取逆置后的前三行。
我们看到,管道类似于一个流水线。我们把逆置后的 10行放到管道,head提取前三行,通过管道实现多个信息流进行不同指令的加工处理。
八、时间指令
8.1 date指令
date 指定格式显示时间: date +%Y:%m:%d
date 用法:date [OPTION]... [+FORMAT]
1.在显示方面,使用者可以设定欲显示的格式,格式设定为一个加号后接数个标记,其中常用的标记列表如下
1、%H : 小时
2、%M : 分钟
3、%S : 秒
4、%X : 相当于 %H:%M:%S
5、%d : 日
6、%m : 月份
7、%Y : 完整年份
8、%F : 相当于 %Y-%m-%d
这个看起来不舒服,我们可以改造一下:date +%Y/%m/%d
这里需要说明,除了百分号以外的符号,其他符号除了空格可以自行随便设置。
8.2 date +%s指令
date +%s指令显示时间戳
我们决定这个秒数真别扭,可以把时间戳转成好看的时间。
我们在时间后面加上 -d@秒数 ,就会计算距离1970年1月1日多少秒的时间。
8.3 cal指令
cal指令就是一个查看日历的指令。
cal+年份显示那一年的日历:
cal -3显示本月上月和下月的日历