首页 > 代码库 > Linux高频命令(二)

Linux高频命令(二)

tar 命令可以用来归档并压缩文件。Linux 下的tar工具室GNU版本,这个版本与传统的tar有一定的区别,如支持长格式参数等。tar的语法为:

tar    <操作>  [参数]

操作选项有:

[-]A    将一个tar文件追加到另一个归档文件中

[-]c     创建一个新文档

[-]d     寻找归档与文件系统之间的差异

[-]r      将文件添加到一个归档文件的末尾

[-]t       列出归档文件的内容

[-]u     将更新的文件替换原有归档文件中的旧文件

[-]x      解压缩归档文件

--delete    从归档中删除

常用参数如下:

-f<文件名>    使用归档文件

-j                    使用bzip2程序压缩/解压归档文件

-v                   详细输出模式

-z                   使用gzip程序压缩/解压归档文件

--atime-preserve    不改变文件的存取

等等。。。。。。

下面的命令,将/home/zhu 下的所有文件归档并以gzip压缩,生成的压缩归档文件名为test.tar.gz:

[root@xingzheson zhu]# tar zcvf /tmp/test.tar.gz /home/zhu

 下面的命令解压缩文件test.tar.gz

[root@xingzheson tmp]# tar zxvf test.tar.gz
home/zhu/
home/zhu/.gnome2/
home/zhu/.mozilla/
home/zhu/.mozilla/extensions/
home/zhu/.mozilla/plugins/
home/zhu/.bash_logout
home/zhu/hello.txt
home/zhu/.bashrc
home/zhu/.bash_profile

 

gzip压缩工具

gzip是一个使用LZ77算法的压缩工具。语法为:

gzip [参数] [文件名。。。]

参数:

-c        将输出定向到标准输出上,保持源文件不变

-d        解压缩

-f         强制压缩或解压

-l         列出压缩文件的压缩后大小、解压后大小、压缩比例和解压后的文件名

-r        递归压缩或解压目录及子目录下的所有文件

-t        测试

下面的样例命令,将/tmp/abc 压缩为/tmp/abc.gz:

[root@xingzheson tmp]# gzip /tmp/abc

注意:按照上面的操作,原文件就不在了,如果还想保留原文件可以使用

[root@xingzheson tmp]# gzip -c /tmp/abc > /tmp/abc.gz

解压:

[root@xingzheson tmp]# gzip -d /tmp/abc.gz

 

bzip2压缩工具

参数:

-c        压缩或解压至标准输出

-d        解压缩

-z        压缩

-t        测试

-k       保留源文件

-<压缩速度>  指定压缩速度。压缩速度为整数1-9

下面的样例:

[root@xingzheson tmp]# bzip2 -k9 /tmp/abc

[root@xingzheson tmp]# bzip2 -d /tmp/abc.bz2

 

 

文本处理相关命令

grep显示文件中的匹配行

参数:

-A<行数>            显示匹配行,以及匹配行之后的指定行数

-B<行数>            显示匹配行,以及匹配行之前的指定行数

-c                         显示匹配的行数

-e<字符串>        匹配特殊字符串

-i                          忽略大小写

-n                        在输出行之前标上行号

-r                         递归读取目录及子目录下的文件

-x                        只输出整行匹配的行

 

[root@xingzheson tmp]# grep test /tmp/abc

 

 

 

differ 比较两个文件之间的差异

参数:

-a    将所有文件档作文本文件处理

-b    忽略空格个数差异

-B    忽略空格差异

-i     忽略大小写差异

-q    如果两个文件有差异,则报告

-r    比较两个目录时,递归对比目录及子目录下的文件

-s    如果两个文件没有差异,则报告

 

differ  file1  file2

 

 

 

 

sort排序文件内容

参数;

-f        忽略大小写

-g       以数值排序

-i        只考虑可显示的字符

-k<列号>  按照指定的列号排序

-n        以字符串数值排序

-r      倒序排序

-o     将完成排序的内容输出到目标文件中

-u     如果有多个向同行,则只输出一行

 

 

 

head 显示文件起始部分

参数:

-c<字节数>

 

-n<行数>

 

-v

 

样例:

[root@xingzheson tmp]# head -n 5 /etc/services
# /etc/services:
# $Id: services,v 1.48 2009/11/11 14:32:31 ovasik Exp $
#
# Network services, Internet style
# IANA services version: last updated 2009-11-10

 

 

tail显示文件结尾部分

参数同上

[root@xingzheson tmp]# tail -10 /etc/services
nimgtw          48003/udp               # Nimbus Gateway
3gpp-cbsp       48049/tcp               # 3GPP Cell Broadcast Service Protocol
isnetserv       48128/tcp               # Image Systems Network Services
isnetserv       48128/udp               # Image Systems Network Services
blp5            48129/tcp               # Bloomberg locator
blp5            48129/udp               # Bloomberg locator
com-bardac-dw   48556/tcp               # com-bardac-dw
com-bardac-dw   48556/udp               # com-bardac-dw
iqobject        48619/tcp               # iqobject
iqobject        48619/udp               # iqobject

 

 

wc统计文件的内容信息

参数:

-c     显示字节数

-m   显示字符数

-l      显示行数

-L    显示最长行的字符数

-w    显示单词数

 

[root@xingzheson tmp]# wc /etc/services
 10774  58104 640999 /etc/services

 

 

本文出自 “IT 行者松” 博客,请务必保留此出处http://520yatou.blog.51cto.com/6642882/1434951