Python学习记录17
1.文本搜索grep
Linux系统中grep命令是一种强大的文本搜索工具,grep允许对文本文件进行模式查找。如果找到匹配模式, grep打印包含模式的所有行。
grep一般格式为:
grep [-选项] ‘搜索内容串’文件名
在grep命令中输入字符串参数时,最好引号或双引号括起来。例如:grep‘a ’1.txt。
grep搜索内容串可以是正则表达式。常用选项说明:
grep常用正则表达式:
2.查找文件find
find命令功能非常强大,通常用来在特定的目录下搜索符合条件的文件,也可以用来搜索特定用户属主的文件。常用用法:
注意:使用find进行查找的时候,查找指定目录以及子目录下所有符合条件的文件
查找特定的文件的时候,无需使用单引号或者双引号将文件扩起来,但是若使用正则的时候,我们需要将正则的字符串使用单引号或者双引号给扩起来。
3.拷贝文件cp
cp命令的功能是将给出的文件或目录复制到另一个文件或目录中,相当于DOS下的copy命令。常用用法:
语法:
cp [-选项] 源文件 目标文件
4.移动文件mv
用户可以使用mv命令来移动文件或目录,也可以给文件或目录重命名。
若目标文件存在并且是目录的情况下,则将源文件移动到指定目录下,若目标文件存在但是不是目录,则源文件覆盖目标文件,
若目标文件不存在,则将源文件进行重命名。
5.归档管理tar
计算机中的数据经常需要备份,tar是Unix/Linux中最常用的备份工具,此命令可以把一系列文件归档到一个大文件中,也可以把档案文件解开以恢复数据。
tar使用格式
tar [参数] 打包文件名 文件
tar命令很特殊,其参数前面可以使用“-”,也可以不使用。
注意:除了f需要放在参数的最后,其它参数的顺序任意。
例如:
tar -cvf test.tar *
6.文件压缩解压:gzip
tar与gzip命令结合使用实现文件打包、压缩。 tar只负责打包文件,但不压缩,用gzip压缩tar打包后的文件,其扩展名一般用xxxx.tar.gz。
gzip使用格式如下:
gzip [选项] 被压缩文件
tar这个命令并没有压缩的功能,它只是一个打包的命令,但是在tar命令中增加一个选项(-z)可以调用gzip实现了一个压缩的功能,实行一个先打包后压缩的过程。
压缩用法:tar cvzf 压缩包包名 文件1 文件2 …
-z :指定压缩包的格式为:file.tar.gz
解压用法: tar zxvf 压缩包包名
-z:指定压缩包的格式为:file.tar.gz
例如:
#打包并压缩文件
tar -zcvf test.tar.gz *
#解压到当前路径下
tar -zxvf test.tar.gz
#解压到指定目录下
tar -zxvf test.tar.gz -C a/
7.文件压缩解压:bzip2
tar与bzip2命令结合使用实现文件打包、压缩(用法和gzip一样)。
tar只负责打包文件,但不压缩,用bzip2压缩tar打包后的文件,其扩展名一般用xxxx.tar.gz2。
在tar命令中增加一个选项(-j)可以调用bzip2实现了一个压缩的功能,实行一个先打包后压缩的过程。
压缩用法:tar -jcvf 压缩包包名 文件…(tar jcvf bk.tar.gz2 *.c)
解压用法:tar -jxvf 压缩包包名 (tar jxvf bk.tar.gz2)
8.文件压缩解压:zip、unzip
通过zip压缩文件的目标文件不需要指定扩展名,默认扩展名为zip。
压缩文件:zip [-r] 目标文件(没有扩展名) 源文件
解压文件:unzip -d 解压后目录文件 压缩文件
例如:
#压缩文件
zip myzip *
#解压文件到指定路径
unzip -d ./test myzip.zip
9. 查看命令位置:which
10. 查看目录结构:tree
11.echo命令 – 输出字符串或提取Shell变量的值
echo命令用于在终端设备上输出字符串或变量提取后的值
语法格式:echo 参数
12. less命令 – 分页显示工具
浏览文字档案的内容,用less命令显示文件时,PageUp键向上翻页,PageDown键向下翻页,要退出less程序,应按Q键。
less的作用与more十分相似,不同点为less命令允许用户向前或向后浏览文件,而more命令只能向前浏览
命令内部操作:
13.wc命令 – 统计文件的字节数、字数、行数
wc命令统计指定文件中的字节数、字数、行数,并将统计结果显示输出。利用wc指令我们可以计算文件的Byte数、字数或是列数,若不指定文件名称,或是所给予的文件名为“-”,则wc指令会从标准输入设备读取数据。wc同时也给出所指定文件的总统计数
语法格式:wc 参数
参考实例
统计字数:
[root@linuxcool ~]# cat test.txt
hello world
hello world
hello world
hello world hello world
[root@linuxcool ~]# wc -w test.txt
10 test.txt
统计字节数:
[root@linuxcool ~]# wc -c test.txt
60 test.txt
统计字符数:
[root@linuxcool ~]# wc -m test.txt
60 test.txt
统计行数:
[root@linuxcool ~]# wc -l test.txt
4 test.txt
打印最长行的长度:
[root@linuxcool ~]# wc -L test.txt
23 test.txt