普通文件相关指令
一、touch指令
touch:文件不存在则创建一个新的文件,文件存在则刷新文件时间属性。
可以看到最初test2的时间属性10月13日,在经过touch指令之后变为了10月15日,这也是touch指令的最常见用法。
二、cat指令
cat:打印文件内容到终端(多用于查看短小文件)。
三、more命令、less命令、head命令、tail命令
more命令
more:分页显示文件内容。
最后一行显示内容表示文件内容显示26%
此时回车则会显示下一行内容
此时空格或者ctrl+f则会显示下一页内容
此时ctrl+b则会显示上一页内容
q则是退出显示
less命令
less:分页显示文件内容。
相比于more,less不显示文件显示的百分比,使用上下箭头或jk按键(按行滚动)、空格、回车、ctrl+f(上翻页)、ctrl+d(下翻页)等多种滚动滑动方式。
拥有字符串匹配功能(只能向下查找不能向上查找)
输入/Google 显示如上图所示,自动跳转到匹配行数。
向下查找输入/+待查找字符串,如:/Google
向上查找则输入?+带查找字符串,如:?Google
与more命令相同也使用q退出。
head命令
head:打印文件前n行内容(默认为10行)。
head -n num可指定打印的前n行行数
head -n 1表示打印对应文件的前一行内容。
tail命令
tail:打印文件的末尾n行内容(默认为10行)。
tail -n num可指定打印的后n行行数。
tail -f动态刷新文件的末尾内容(命令运行之后不会自动退出,而是一直等待文件末尾有新数据则刷新显示)。
在新建回话中使用echo “Today is a good day” >> 指定文件名 向指定文件末尾追加写入数据。
然后就可以看到在原来的通道中显示在新建回话末尾追加的相应数据。
echo “Today is a good day” 打印指定的字符串,将数据写入到标准输出文件
标准输入文件——键盘
标准输出文件——显示器
标准错误文件——显示器
至于>> 指定文件名 使得标准输出重定向,让标准输出不再指向显示器。而是指向指定的文件,将原本要写入显示器设备的数据,不再写入显示器,而是写入指定的文件。
而>则代表清空重定向,清空文件原有内容,写入重定向的数据。
可以看到>和>>的区别在于>>表示写入指定文件,通过此命令写入了nihao以及大家好,而>表示清空文件原有内容(并不是覆盖内容),执行此命令之后,使用cat命令查看短小文件内容能得到文件内部已变为hello。
四、压缩与解压缩
zip与unzip
ls -lh查看文件的内存大小
压缩指令:zip test.txt.zip text.txt
zip(压缩方式) test.txt.zip(压缩后的文件名) test.txt(压缩选定的文件的文件名)
实际运行如下图所示:
解压指令:unzip test.txt.zip
先删除test.txt
再使用解压指令对压缩包解压,使用ls -lh可以查看到又出现了test.txt文件
实际运行如下图所示:
gzip与gunzip
压缩指令:gzip test.txt
实际运行如下图所示:
可以看到后缀名为.gz
gzip与zip的压缩区别在于zip压缩后仍然保留原文件,但gzip压缩后将原文件删除,只保留压缩后的结果
解压指令:gunzip test.txt.gz
实际运行如下图所示:
bzip2与bunzip2
压缩指令:bzip2 test.txt
bzip2和gzip一样不保留原文件
解压指令:bunzip2 test.txt.bz2
tar 打包工具
-c 打包 -x解包
-z打包或解包的同时以gzip格式进行压缩解压缩
-j打包或解包的同时以bzip2格式进行压缩解压缩
-v打包或解包的同时,显示详细的信息
-f用于指定压缩包名称
五、匹配查找指令
在指定目录查找文件
find ./ -name或type或size等……
-name按照文件名称查找
-type按照文件类型查找
-size按照文件大小查找
-【amc】time:以24小时为单位
-【amc】min:以分钟为单位
在指定文件匹配内容
grep “main” ./* 针对当前目录下的所有文件匹配main
grep -R “main” ./ 相比使用上一行的./*更加的规范
-R 递归针对指定目录下的文件逐个进行匹配,-R选项的操作对象不是文件而是目录
grep
-i:忽略大小写
-v:反向匹配,匹配不包含指定字符串的行