红联Linux门户
Linux帮助

RHCE第十六讲:常用的文件操作指令

发布时间:2010-12-07 10:47:11来源:红联作者:linuxcui
wc
wc用来统计一个文件的行数、词数、字数并送到标准输出。也可以用-l(行数)、-w(词数)、-c(字数)来指定输出内容。
grep
grep用来从一个文件中找出匹配指定关键字的那一行,并送到标准输出。结合管道,我们通常用它来过滤搜索结果,例如:
[kevinz@stationXX kevinz] $ ls
-a | grep bash
.bash_history
.bash_logout
.bash_profile
.bashrc

grep支持用扩展的正则表达式来进一步定义关键字,具体如下:
.
替代任何一个单一字符
.*
替代零个或任意个字符
[abc]
替代a、b或c
[^abc] 替代除了a、b、c以外的字符
a*
替代空、a、aa、aaa、乃至更多个a
a?

替代一个或零个单独的a
a+

替代a、aa、aaa乃至更多个a
a\{n\}
替代重复了n次的a
^a

替代以a为首的行
a$
替代以a为尾的行
sort
sort用来按各种需要重新排列文本,一般运用在一个管道之后。例如:
[kevinz@stationXX kevinz] $ ls
-a | grep bash | sort

.bash_history
.bash_logout
.bash_profile
.bashrc
[kevinz@stationXX kevinz] $ ls
-a | grep bash | sort -r
.bashrc
.bash_profile
.bash_logout
.bash_history
默认情况下sort按照字母顺序排列文本。
-n
按照数字排序
-r

反向排序
-u
将重复的行去除
diff
diff用于比较两个文件之间的区别,并送到标准输出。输出时先报告两个文件的哪一行不同。
<表示是前一个文件的内容
,>表示后一个文件的内容。例如:
[kevinz@stationXX kevinz] $echo “begin1”>file1
[kevinz@stationXX kevinz] $echo “begin2”>file1
[kevinz@stationXX kevinz] $diff
file1
file2

1c1
----
>begin2

comp
comp同样可以用于比较文件,但comp只报告两个文件什么地方不同,并不显示差异。
uniq
uniq用于去除文本中重复的行。-u参数可以只显示那些没有被重复过的行。-d显示有被重复过的行。
cut
cut可以根据一个指定的标记(默认是tab)来为文本划分列,然后将此列显示,例如:
[root@stationXX root] $ cut -f1 -d: /etc/shadow
表示以:为分隔符,显示/etc/shadow的第一列
paste
paste将几份文集那按照列的方式拼接。默认情况下,新文件的列分隔符是tab,也可以用-d参数指定。
•gzip,gunzip
-Linux标准压缩工具
-对文本文件可以达到75%的压缩率
•compress,uncompress
-旧的Unix压缩工具
•bzip2,bunzip2
-更新的Linux压缩工具
-比gzip有着更高的压缩率
•对于用gzip压缩的文件,有一系列以z为开头的文件,可以在不经解压的情况下,直接操作文件
-zcat:直接显示压缩文件的内容
-zless:直接逐行显示压缩文件的内容
-zdiff:直接报告压缩文件的差异内容
-zcmp:直接报告压缩文件的差异处
•用于在磁带机、软盘、ZIP设备上做备份。也可以备份在一个硬盘文件上。
TAR
•主要参数:
-c:将文件备份出来
-v:将过程输出
-x:从一个文件中解出备份
•范例
-备份:tar cvf backup.tar *.txt
-解开:tar xvf backup.tar -C backup/
dump/restore
备份与还原ext2/3文件系统
不可以在其他文件系统上使用
可以选择进行完全备份或增量备份
范例:
dump -0u -f /var/tmp/hda2dump /dev/hda1
restore -rf /var/tmp/hda2dump
文章评论

共有 0 条评论