Linux基础命令之: Linux常用命令
成一个小文件。为什么要区分这两个概念呢?这是由于在Linux中的很多压缩程序(如前面介绍的gzip)只能针对一个文件进行压缩,这样当想要压缩较多文件时,就要借助它的工具将这些堆文件先打成一个包,然后再用原来的压缩程序进行压缩。 (2)格式。 tar[选项][打包后文件名]文件目录列表。 tar可自动根据文件名识别打包或解包动作,其中打包后文件名为用户自定义的打包后文件名称,文件目录列表可以是要进行打包备份的文件目录列表,也可以是进行解包的文件目录列表。 (3)主要参数。 tar主要选项参数如表2.24所示。 表2.24 tar命令常见参数列表 选项 参数含义 -c 建立新的打包文件 -r 向打包文件末尾追加文件 -x 从打包文件中解出文件 -o 将文件解开到标准输出 -v 处理过程中输出相关信息 -f 对普通文件操作 -z 调用gzip来压缩打包文件,与-x联用时调用gzip完成解压缩 -j 调用bzip2来压缩打包文件,与-x联用时调用bzip2完成解压缩 -Z 调用compress来压缩打包文件,与-x联用时调用compress完成解压缩 (4)使用实例。 [root@localhosthome]#tar-cvfdavid.tardavid ./david/ ./david/.bash_logout ./david/.bash_profile ./david/.bashrc ./david/.bash_history ./david/my/ ./david/my/1.c.gz ./david/my/my.c.gz ./david/my/hello.c.gz ./david/my/why.c.gz [root@localhosthome]#ls-ldavid.tar -rw-r--r--1rootroot10240Jan1415:01david.tar 该实例将“david”目录下的文件加以打包,其中选项“-v”在屏幕上输出了打包的具体过程。 [david@localhostdavid]#tar-zxvflinux-2.6.11.tar.gz linux-2.6.11/ linux-2.6.11/drivers/ linux-2.6.11/drivers/video/ linux-2.6.11/drivers/video/aty/ … 该实例用选项“-z”调用gzip,与“-x”联用时完成解压缩。 (5)使用说明。 tar命令除了用于常规的打包之外,使用更为频繁的是用选项“-z”或“-j”调用gzip或bzip2(Linux中另一种解压工具)完成对各种不同文件的解压。 表2.25对Linux中常见类型的文件解压命令做一个总结。 表2.25 Linux常见类型的文件解压命令一览表 文件后缀 解压命令 示例 .a tarxv tarxvhello.a .z Uncompress uncompresshello.Z .gz Gunzip gunziphello.gz .tar.Z tarxvZf tarxvZfhello.tar.Z .tar.gz/.tgz tarxvzf tarxvzfhello.tar.gz tar.bz2 tarjxvf tarjxvfhello.tar.bz2 .rpm 安装:rpm–i 安装:rpm-ihello.rpm 解压缩:rpm2cpio 解压缩:rpm2cpiohello.rpm .deb(Debain中的文件格式) 安装:dpkg–i 安装:dpkg-ihello.deb 解压缩:dpkg-deb--fsys-tarfile 解压缩:dpkg-deb--fsys-tarhellohello.deb .zip Unzip unziphello.zip (1)作用。 比较两个不同的文件或不同目录下的两个同名文件功能,并生成补丁文件。 (2)格式。 diff[选项]文件1文件2 diff比较文件1和文件2的不同之处,并按照选项所指定的格式加以输出。diff的格式分为命令格式和上下文格式,其中上下文格式又包括了旧版上下文格式和新版上下文格式,命令格式分为标准命令格式、简单命令格式及混合命令格式,它们之间的区别会在使用实例中进行详细讲解。当选项缺省时,diff默认使用混合命令格式。 (3)主要参数。 diff主要选项参数如表2.26所示。 表2.26 diff命令常见参数列表 选项 参数含义 -r 对目录进行递归处理 -q 只报告文件是否有不同,不输出结果 -e,-ed 命令格式 -f RCS(修订控制系统)命令简单格式 -c,--context 旧版上下文格式 -u,--unified 新版上下文格式 -Z 调用compress来压缩归档文件,与-x联用时调用compress完成解压缩 (4)使用实例。 以下有两个文件hello1.c和hello2.c。 /*hello1.c*/ #includestdio.h> voidmain() { printf(Hello!Thisismyhome!\n); } /*hello2.c*/ #includestdio.h> voidmain() { printf(Hello!Thisisyourhome!\n); } 以下实例主要讲解了各种不同格式的比较和补丁文件的创建方法。 ①主要格式比较。 首先使用旧版上下文格式进行比较。 [root@localhostdavid]#diff-chello1.chello2.c ***hello1.cSatJan1416:24:512006 ---hello2.cSatJan1416:54:412006 *************** ***1,5**** #includestdio.h> voidmain() { !printf(Hello!Thisismyhome!\n); } ---1,5---- #includestdio.h> voidmain() { !printf(Hello!Thisisyourhome!\n); } 可以看出,用旧版上下文格式进行输出时,在显示每个有差别行的同时还显示该行的上下3行,区别的地方用“!”加以标出,由于示例程序较短,上下3行已经包含了全部代码。2.1.4文件比较合并相关命令
1.diff
操作系统 Linux Shell 用户切换 su useradd 相关文章:
- VxWorks实时操作系统下MPC8260ATM驱动的实现(11-11)
- VXWORKS内核分析(11-11)
- Linux内核解读入门(11-09)
- 嵌入式系统实时性的问题(06-21)
- 基于WinCE操作系统的通用USB数控键盘设计(08-05)
- 嵌入式实时操作系统设计探讨(10-15)