tar命令详解

tar命令详解
tar命令详解

tar是Linux环境下最常用的备份工具之一。tar(tap archive)原意为操作磁带文件,但基于Linux的文件操作机制,同样也可适用于普通的磁盘文件。tar可用于建立、还原、查看、管理文件,也可方便的追加新文件到备份文件中,或仅更新部分的备份文件,以及解压、删除指定的文件。熟悉其常用参数,能方便日常的系统管理工作。

一、版本

还是那句,不同的操作系统,tar的命令参数是有点区别的:

引用

# tar --version

tar (GNU tar) 1.14

二、简单操作

命令格式:

tar [options] [tarfile] [other-files]

tar--long-option -function-options files

tar可使用的参数非常多,先列举几个最常用的参数:

引用

-t, --list

列出归档文件内容目录

-x, --extract, --get

从归档文件中解析文件

-c, --create

创建新的归档文件

上面三个参数,不能同时存在,仅能使用其中一个,即t/x/c

-f file, --file=file

指定备份文件,或设备,例如磁带机/dev/st0

-v, --verbose

显示命令的执行过程

-Z, --compress, --uncompress

使用compress命令处理备份文件

-z, --gzip, --gunzip, --ungzip

使用gzip命令处理备份文件

-j, --I, --bzip

使用bzip2命令处理备份文件

-z和-j都是在备份文件打包后才进行压缩的操作的,并且,该操作会影响其他的参数,后面会再提到

-C directory, --directory=directory

先进入指定的目录,再释放

简单使用:

把/etc目录中所有的文件打包为etc.tar文件

tar -cvf /tmp/etc.tar /etc

把/etc目录中所有的文件打包并使用gzip压缩为etc.tar.gz文件

tar -zcvf /tmp/etc.tar.gz /etc

把/etc目录中所有的文件打包并使用bzip2压缩为etc.tar.bz2文件

这里的,tar.gz或tar.bz2都是惯例,为方便标识的,例如:tgz等,并不是特定条件,但建议遵循惯例

tar -jcvf /tmp/etc.tar.bz2 /etc

查看备份包中的内容,若为已经压缩的文件,需加上-z或者-j参数

tar -ztvf /tmp/etc.tar.gz

默认情况下,tar打包时都是使用相对路径的,所以,释放时,需要先进入目录目录,然后再解压

同样的,根据使用的压缩方式,应加上-z或者-j参数

cd /tmp && tar -zxvf /tmp/etc.tar.gz

这是另一种写法,结果和上面的相同,其会先进入/tmp目录,然后再释放包的

tar -zxvf /tmp/etc.tar.gz -C /tmp

释放单个etc/passwd文件,正如前面提到的,tar包中的是相对路径,所以不能使用“/etc/passwd”

而且,这里不能使用-C参数,释放文件是当前路径的相对路径,并带目录释放

tar -zxvf /tmp/etc.tar.gz etc/passwd

tar还可以支持很多额外的参数,方便我们在备份和释放的时候进行控制。

三、更多参数

以三大常见操作为序说明。

1、备份

引用

-d, --diff, --compare

找出归档文件和文件系统的不同之处

-r, --append

将文件附加到归档文件之后

-u, --update

只附加比归档中新的文件

-A, --catenate

将tar 文件附加到归档文件之后

--concatenate

与-A 相同

--delete

从归档文件中删除(不能在磁带上!)

-N date, --newer=date, --after-date=date

只将比指定日期更新的文件保存到备份文件

--exclude=pattern

排除符合查找模式的文件

-P, --absolute-names

备份文件中的文件名使用绝对路径,而不移除文件名前的“/”,默认是相对路径的

-l, --one-file-system

复制文件或目录存放的文件系统必须和tar命令当前执行的文件系统相同,否则不执行;也就是讲,不处理其他分区的文件。(可忽略mount挂载分区的问题)

--mode=permissions

备份时,把加入备份文件中的文件属性修改为指定的属性,格式和chmod命令接受的格式相同

--group=group

备份时,把加入备份文件中的文件所属组设定成指定的组

--owner=owner

备份时,把把加入备份文件中的文件所有者设定成指定的用户

--numeric-owner

以UID和GID代替用户名和组名

--recursion

递归模式(默认)

--no-recursion

不进行递归处理,即不把指定目录下的所有文件和文件夹都备份

--newer-mtime=date

Add only files whose contents have changed since date to the archive.

仅增加指定日期后修改过内容的文件到备份文件中

--anchored

排除时,排除匹配式中匹配整个文件路径(默认)

--no-anchored

排除时,排除匹配式中可匹配“/”后的路径

--ignore-case

排除时,排除匹配式中忽略大小写

--no-ignore-case

排除时,排除匹配式中大小写敏感(默认)

--wildcards

排除匹配式支持通配符(默认)

--no-wildcards

排除匹配式不支持通配符

--wildcards-match-slash

排除匹配式的通配符匹配“/”(默认)

--no-wildcards-match-slash

排除匹配式的通配符不匹配“/”

-X file, --exclude-from file

指定样式文件,供程序执行时剔除符合条件的文件

--remove-files

删除已经加入到备份文件中的文件

举例:

创建当前目录的全备份到backup.tar文件

(使用find的原因是,这样可以打包所有隐含文件或不符合命令规范的文件和目录)tar cvf - `find . -print` > backup.tar

比2005年6月1日新的文件才会备份

tar -N '2005/06/01' -zcvf home.tar.gz /home

除/home/dmtsai目录外,/home和/etc目录的所有东西都打包

tar --exclude /home/dmtsai -zcvf myfile.tar.gz /home/* /etc

删除etc.tar文件中的etc/pbm2ppa.conf文件

tar --delete etc/pbm2ppa.conf -vf etc.tar

把tmp.tar文件附加到etc.tar后面

tar -A tmp.tar -vf etc.tar

根据-T参数后的样式文件list.txt,打包/etc中指定的文件,同样的,list.tx默认也是相对路径的

find . -name "*.d" -o -name "*.conf" > list.txt

tar -T list.txt -czvf etc.tar.gz /etc

通过管道,使用一条命令实现上面相同的功能

find . -name "*.d" -o -name "*.conf" | tar -czvf etc.tar.gz -T -

※值得注意几个地方

引用

1)-f后面必须紧跟备份文件,xxx.tar或者xxx.tar.gz

2)使用--delete、-u、-r、-A的时候,后面跟的备份文件都必须为未压缩的,若备份文件已经压缩,需要使用gunzip先解压,操作完后再gzip;

也就是说,不能对tar.gz、tar.bz2等文件直接操作的;

3)备份打包时,默认为相对路径;而排除匹配式默认也是全路径匹配的

所以,在打包时,会提示:“tar: Removing leading `/' from member names”

除非你使用-P参数或特定的参数指定

2、释放

引用

-k, --keep-old-files

还原备份文件时,不覆盖已存在的文件

-m, --modification-time, --touch

还原文件时,不变更文件的更改时间

-p, --same-permissions

解析许可权限信息,即保留备份文件中的权限信息

-s, --same-order, --preserve-order

以与备份文件相同的顺序还原文件

--preserve

等于同时设置-p和-s

--no-same-permissions

不解析许可权限信息,这是普通用户的默认设置,仅对影响管理员的操作有影响

--no-same-owner

不使用备份文件中的所有者信息,而以您自己的身份解析文件

--same-owner

使用相同的文件所有者还原文件

--overwrite

覆盖已经存在的文件和目录

--overwrite-dir

覆盖已经存在的目录

--recursive-unlink

释放前,先删除整个目录下所有文件的连接

举例:

释放文件时,设置为备份文件中的相同所有者(仅对管理员而言)

tar --same-owner -xzvf etc.tar.gz

通过管道,把/etc目录用tar整个“拷贝”到/backup/etc,而不用建立任何临时文件因为根本不需要生成备份包文件,所以这里不需要-z参数

tar cvf - /etc | tar xvf - -C /backup/etc

这里同上面的原理是一样的,只不过通过ssh直接“拷贝”到远端机器上而已

配合ssh密钥匹配,可实现不用人工干预的备份工作

tar cvf - /etc | (ssh root@192.168.228.244 'tar xvf - -C /backup/etc') 3、操作磁带设备

部分参数只适用于磁带设备,不适用于常规的磁盘文件。

引用

-K file, --starting-file=file

从指定的文件开始还原(按顺序)

-L length, --tape-length=length

设置磁带的容量,单位为1024字节(bytes)

-M, --multivolume

在建立、还原备份文件或列出其中内容时,采用多卷模式(不能对文件操作)

-V name, --label=name

建立使用指定卷标的备份文件

-W, --verify

写入备份文件后,校验文件是否正常

-F script, --info-script=script, --new-volume-script=script

更换磁带时执行指定的脚本文件,必须与参数-M同时使用

举例:

把/bin、/usr/bin目录都打包到st0磁带设备中

tar cvf /dev/st0 /bin /usr/bin

把old.dmp文件追加到st0磁带中(使用cvf,会删除原来的文件的)

Linux下使用磁带机的简单方法,可以见这里:

点击

tar rvf /dev/st0 old.dmp

4、其他

还有一些控制参数这里不详细讨论了,请自行测试。

但提醒一句,-T参数比较重要哦。

引用

--null

-T从null设备读取文件名,覆盖-C的设置

-o, --old-archive, --portability

将数据写入备份文件时使用V7格式

--posix

将数据写入备份文件时使用POSIX格式

-G, --incremental

处理旧GNU格式的增量备份

--rsh-command=command

不使用rsh命令连接远程主机,而使用指定的命令进行

--suffix=suffix

指定要删除文件前备份文件,该备份文件使用的后缀,默认是“~”

--totals

创建备份文件时,列出已建立的备份文件的大小

tar --totals -cvf tmp.tar tmp/

-R, --block-number

在输出信息时,一同block number信息

-S, --sparse

若文件中有大量连续0字节时,将该文件保存成稀疏文件

-T file, --files-from=file

指定样式文件,文件内容为一个或多个条件样式,供程序还原或创建符合指定条件的文件--use-compress-program=program

使用指定的压缩程序对备份文件压缩或解压

--volno-file=FILE

使用或更新FILE文件中指定的卷号码

-w, --interactive, --confirmation

当遇到问题时,要求用户先确认

-B, --read-full-records

读取数据是重设扇区大小,仅适用于BSD 4.2的管道操作

-O, --to-stdout

把从备份文件里还原的文件输出到标准输出设备

--version

版本信息

--help

帮助信息

linux打包压缩命令汇总

linux打包压缩命令汇总 linux打包压缩命令汇总 tar命令 [root@linux ~]# tar [-cxtzjvfpPN] 文件与目录 .... 参数: -c :建立一个压缩文件的参数指令(create 的意思); -x :解开一个压缩文件的参数指令! -t :查看 tarfile 里面的文件! 特别注意,在参数的下达中, c/x/t 仅能存在一个!不可同时存在!因为不可能同时压缩与解压缩。 -z :是否同时具有 gzip 的属性?亦即是否需要用 gzip 压缩? -j :是否同时具有 bzip2 的属性?亦即是否需要用 bzip2 压缩? -v :压缩的过程中显示文件!这个常用,但不建议用在背景执行过程! -f :使用档名,请留意,在 f 之后要立即接档名喔!不要再加参数!例如使用『 tar -zcvfP tfile sfile』就是错误的写法,要写成 『 tar -zcvPf tfile sfile』才对喔! -p :使用原文件的原来属性(属性不会依据使用者而变) -P :可以使用绝对路径来压缩! -N :比后面接的日期(yyyy/mm/dd)还要新的才会被打包进新建的文件中! --exclude FILE:在压缩的过程中,不要将 FILE 打包! 范例: 范例一:将整个 /etc 目录下的文件全部打包成为 /tmp/etc.tar [root@linux ~]# tar -cvf /tmp/etc.tar /etc <==仅打包,不压缩! [root@linux ~]# tar -zcvf /tmp/etc.tar.gz /etc <==打包后,以gzip 压缩 [root@linux ~]# tar -jcvf /tmp/etc.tar.bz2 /etc <==打包后,以 bzip2 压缩 # 特别注意,在参数 f 之后的文件档名是自己取的,我们习惯上都用.tar 来作为辨识。 # 如果加 z 参数,则以 .tar.gz 或 .tgz 来代表 gzip 压缩过的 tar file ~ # 如果加 j 参数,则以 .tar.bz2 来作为附档名啊~ # 上述指令在执行的时候,会显示一个警告讯息: # 『tar: Removing leading `/' from member names』那是关於绝对路径的特殊设定。 范例二:查阅上述 /tmp/etc.tar.gz 文件内有哪些文件? [root@linux ~]# tar -ztvf /tmp/etc.tar.gz # 由於我们使用 gzip 压缩,所以要查阅该 tar file 内的文件时,

AIX的vmstat命令详解

AIX的vmstat命令详解(原创) vmstat概述 vmstat 命令报告关于内核线程、虚拟内存、磁盘、陷阱和CPU 活动的统计信息。由vmstat 命令生成的报告可以用于平衡系统负载活动。系统范围内的这些统计信息(所有的处理器中)都计算出以百分比表示的平均值,或者计算其总和。 Interval 参数指定每个报告之间的时间量(以秒计)。第一个报告包含系统启动后时间的统计信息。后续报告包含自从前一个报告起的时间间隔过程中所收集的统计信息。如果没有指定Interval 参数,vmstat 命令生成单个报告然后退出。Count 参数只能和Interval 参数一起指定。如果指定了Count 参数,其值决定生成的报告数目和相互间隔的秒数。如果Interval 参数被指定而没有Count 参数,则连续生成报告。Count 参数不允许为0。 内核为内核线程、调页和中断活动维护统计信息,vmstat 命令通过使用perfstat 内核扩展来对其进行访问。磁盘输入/输出统计信息由设备驱动程序维护。对于磁盘,利用活动时间和传送信息数量来确定平均传送速率。活动时间的百分数根据报告期间驱动器忙的时间量来计算。 vmstat命令输出详解 输出样例 #vmstat 1 2 System configuration: lcpu=8 mem=15360MB kthr memory page faults cpu ----- ---------------------------- ---------------------- ------------ ---------------------------------------- r b avm fre re pi po fr sr cy in sy cs us sy id wa 1 0 1614482 971363 0 0 0 0 0 0 56 4997 2739 1 1 97 0 0 0 1614484 971361 0 0 0 0 0 0 23 4435 2677 1 1 97 0 Kthr kernel thread state(内核线程状态,表示每秒钟在采样间隔时间上对各种队列的内核线程数求得的平均值) r: 取样期间可运行的内核线程的平均数,包括正在运行的线程和指准备运行但尚在等待运行的进程。

Shell命令

Shell Shell 就是用户与操作系统内核之间的接口,起着协调用户与系统的一致性和在用户与系统之间进行交互的作用。 4.1.1 Shell 的基本概念 1. 什么是S hell Shell 就是用户与操作系统内核之间的接口,起着协调用户与系统的一致性和在用户与系统之间进行交互的作用。Shell 在L inux 系统中具有极其重要的地位,如图4-1 所示

第 4 章 Shell 与 V i 编辑器 - 71 - diff grep vi multitasking sh gcc device hardware interface kernn e l TCP/IP stack bash utilii t es 图 4-1 Linux 系统结构组成 2. Shell 的功能 Shell 最重要的功能是命令解释,从这种意义上来说,Shell 是一个命令解释器。Linux 系统中的所有可执行文件都可以作为 Shell 命令来执行。将可执行文件作一个分类,如表 4-1 所示。 表 4-1 可执行文件的分类 部的解释器将其解释为系统功能调用并转交给内核执行;若是外部命令或实用程序就试图 在硬盘中查找该命令并将其调入内存,再将其解释为系统功能调用并转交给内核执行。在 查找该命令时分为两种情况: 用户给出了命令路径,Shell 就沿着用户给出的路径查找,若找到则调入内存,若没有 则输出提示信息; 用户没有给出命令的路径,Shell 就在环境变量 PATH 所制定的路径中依次进行查找, 若找到则调入内存,若没找到则输出提示信息。 图 4-2 描述了 S hell 是如何完成命令解释的。

Linux终端tar解压缩命令详解

tar -c: 建立压缩档案 -x:解压 -t:查看内容 -r:向压缩归档文件末尾追加文件 -u:更新原压缩包中的文件 这五个是独立的命令,压缩解压都要用到其中一个,可以和别的命令连用但只能用其中一个。下面的参数是根据需要在压缩或解压档案时可选的。 -z:有gzip属性的 -j:有bz2属性的 -Z:有compress属性的 -v:显示所有过程 -O:将文件解开到标准输出 下面的参数-f是必须的 -f: 使用档案名字,切记,这个参数是最后一个参数,后面只能接档案名。 # tar -cf all.tar *.jpg 这条命令是将所有.jpg的文件打成一个名为all.tar的包。-c是表示产生新的包,-f指定包的文件名。 # tar -rf all.tar *.gif 这条命令是将所有.gif的文件增加到all.tar的包里面去。-r是表示增加文件的意思。 # tar -uf all.tar logo.gif 这条命令是更新原来tar包all.tar中logo.gif文件,-u是表示更新文件的意思。 # tar -tf all.tar 这条命令是列出all.tar包中所有文件,-t是列出文件的意思 # tar -xf all.tar 这条命令是解出all.tar包中所有文件,-t是解开的意思 压缩 tar -cvf jpg.tar *.jpg //将目录里所有jpg文件打包成tar.jpg tar -czf jpg.tar.gz *.jpg //将目录里所有jpg文件打包成jpg.tar后,并且将其用gzip压缩,生成一个gzip压缩过的包,命名为jpg.tar.gz tar -cjf jpg.tar.bz2 *.jpg //将目录里所有jpg文件打包成jpg.tar后,并且将其用bzip2压缩,生成一个bzip2压缩过的包,命名为jpg.tar.bz2 tar -cZf jpg.tar.Z *.jpg //将目录里所有jpg文件打包成jpg.tar后,并且将其用compress压缩,生成一个umcompress压缩过的包,命名为jpg.tar.Z

iostat命令解释

iostat iostat用于输出CPU和磁盘I/O相关的统计信息. 命令格式: iostat [ -c | -d ] [ -k | -m ] [ -t ] [ -V ] [ -x ] [ device [ ... ] | ALL ] [ -p [ device | ALL ] ] [ interval [ count ] ] 1)iostat的简单使用 iostat可以显示CPU和I/O系统的负载情况及分区状态信息. 直接执行iostat可以显示下面内容: # iostat # iostat –xm 带XM参数显示扩展信息并将磁盘数据有每扇区改为每兆显示(1扇区等于512字节) 各个输出项目的含义如下: avg-cpu段: %user: 在用户级别运行所使用的CPU的百分比. %nice: nice操作所使用的CPU的百分比. %sys: 在系统级别(kernel)运行所使用CPU的百分比. %iowait: CPU等待硬件I/O时,所占用CPU百分比.

%idle: CPU空闲时间的百分比. Device段: tps: 每秒钟发送到的I/O请求数. Blk_read /s: 每秒读取的block数. Blk_wrtn/s: 每秒写入的block数. Blk_read: 读入的block总数. Blk_wrtn: 写入的block总数. 2)iostat参数说明 iostat各个参数说明: -c 仅显示CPU统计信息.与-d选项互斥. -d 仅显示磁盘统计信息.与-c选项互斥. -k 以K为单位显示每秒的磁盘请求数,默认单位块. -p device | ALL 与-x选项互斥,用于显示块设备及系统分区的统计信息.也可以在-p后指定一个设备名,如: # iostat -p hda 或显示所有设备 # iostat -p ALL -t 在输出数据时,打印搜集数据的时间. -V 打印版本号和帮助信息. -x 输出扩展信息. 3)iostat输出项目说明 Blk_read 读入块的当总数. Blk_wrtn 写入块的总数. kB_read/s 每秒从驱动器读入的数据量,单位为K. kB_wrtn/s 每秒向驱动器写入的数据量,单位为K. kB_read 读入的数据总量,单位为K. kB_wrtn 写入的数据总量,单位为K.

ubuntu shell 使用命令大全

ubuntu shell 使用命令大全 前言 下面的命令大都需要在控制台/ 终端/ shell 下输入。 控制台, 终端, 和shell 意味着同样一件事- 一个命令行界面,他可以用来控制系统。 打开一个控制台: 应用程序--> 附件--> 终端 任何一个使用'sudo' 作为前缀的命令都需要拥有管理员(或root) 访问权限。所以你会被提示输入你自己的密码。 安装升级 查看软件xxx安装内容 dpkg -L xxx 查找软件库中的软件 apt-cache search 正则表达式 或 aptitude search 软件包 显示系统安装包的统计信息 apt-cache stats 显示系统全部可用包的名称 apt-cache pkgnames 显示包的信息 apt-cache show k3b 查找文件属于哪个包 apt-file search filename 查看已经安装了哪些包 dpkg -l 查询软件xxx依赖哪些包 apt-cache depends xxx 查询软件xxx被哪些包依赖 apt-cache rdepends xxx 增加一个光盘源 sudo apt-cdrom add 系统升级 sudo apt-get update (这一步更新包列表) sudo apt-get dist-upgrade (这一步安装所有可用更新) 或者 sudo apt-get upgrade (这一步安装应用程序更新,不安装新内核等) 清除所有已删除包的残馀配置文件 dpkg -l |grep ^rc|awk '{print $2}' |sudo xargs dpkg -P 如果报如下错误,证明你的系统中没有残留配置文件了,无须担心。 dpkg: --purge needs at least one package name argument Type dpkg --help for help about installing and deinstalling packages [*]; Use `dselect' or `aptitude' for user-friendly package management; Type dpkg -Dhelp for a list of dpkg debug flag values; Type dpkg --force-help for a list of forcing options; Type dpkg-deb --help for help about manipulating *.deb files; Type dpkg --license for copyright license and lack of warranty (GNU GPL) [*]. Options marked [*] produce a lot of output - pipe it through `less' or `more' ! 编译时缺少h文件的自动处理 sudo auto-apt run ./configure 查看安装软件时下载包的临时存放目录

linux zip unzip详解

linux zip 压缩命令解压命令 unzip Linux下的压缩解压缩命令详解 2010年10月20日星期三下午 02:31 linux zip 压缩命令解压命令 unzip 文章分类:操作系统 linux zip命令的基本用法是: zip [参数] [打包后的文件名] [打包的目录路径] linux zip命令参数列表: -a 将文件转成ASCII模式 -F 尝试修复损坏的压缩文件 -h 显示帮助界面 -m 将文件压缩之后,删除源文件 -n 特定字符串不压缩具有特定字尾字符串的文件 -o 将压缩文件内的所有文件的最新变动时间设为压缩时候的时间 -q 安静模式,在压缩的时候不显示指令的执行过程 -r 将指定的目录下的所有子目录以及文件一起处理 -S 包含系统文件和隐含文件(S是大写) -t 日期把压缩文件的最后修改日期设为指定的日期,日期格式为mmddyyyy 举例: 将/home/Blinux/html/ 这个目录下所有文件和文件夹打包为当前目录下的html.zip zip –q –r html.zip /home/Blinux/html 上面的命令操作是将绝对地址的文件及文件夹进行压缩.以下给出压缩相对路径目录 比如目前在Bliux这个目录下,执行以下操作可以达到以上同样的效果. zip –q –r html.zip html 比如现在我的html目录下,我操作的zip压缩命令是 zip –q –r html.zip * 以上是在安静模式下进行的,而且包含系统文件和隐含文件

////////////////////////////////////////////////////////// unzip语法: unzip [-cflptuvz][-agCjLMnoqsVX][-P <密码>][.zip文件][文件][-d <目录>][-x <文件>] 或 unzip [-Z] 补充说明:unzip为.zip压缩文件的解压缩程序。 unzip参数: -c 将解压缩的结果显示到屏幕上,并对字符做适当的转换。 -f 更新现有的文件。 -l 显示压缩文件内所包含的文件。 -p 与-c参数类似,会将解压缩的结果显示到屏幕上,但不会执行任何的转换。-t 检查压缩文件是否正确。 -u 与-f参数类似,但是除了更新现有的文件外,也会将压缩文件中的其他文件解压缩到目录中。 -v 执行是时显示详细的信息。 -z 仅显示压缩文件的备注文字。 -a 对文本文件进行必要的字符转换。 -b 不要对文本文件进行字符转换。 -C 压缩文件中的文件名称区分大小写。 -j 不处理压缩文件中原有的目录路径。 -L 将压缩文件中的全部文件名改为小写。 -M 将输出结果送到more程序处理。 -n 解压缩时不要覆盖原有的文件。 -o 不必先询问用户,unzip执行后覆盖原有文件。 -P<密码> 使用zip的密码选项。 -q 执行时不显示任何信息。 -s 将文件名中的空白字符转换为底线字符。 -V 保留VMS的文件版本信息。 -X 解压缩时同时回存文件原来的UID/GID。 [.zip文件] 指定.zip压缩文件。 [文件] 指定要处理.zip压缩文件中的哪些文件。 -d<目录> 指定文件解压缩后所要存储的目录。 -x<文件> 指定不要处理.zip压缩文件中的哪些文件。 -Z unzip -Z等于执行zipinfo指令 举例: 将/home/Blinux/html.zip解压到当前目录

linux 安装软件tar和rpm命令

一. tar tar 命令用于把多个文件合并于一个档案文件中,并提供分解的合并后的档案文件的功能,它独立于压缩工具。因此可以选择在合并前是否压缩。tar 命令的基本用法为: tar [选项] 文件名 常用的选项包括: -c 创建一个新的档案文件 -t 查看档案文件的内容 -x 分解档案文件的内容 -f 指定档案文件的名称 -v 显示过程信息 -z 采用压缩方式 举例 1、tar -czf oracle.tar.gz /u01/app/oracle /etc/oratab /home/oracle 该命令将/u01/app/oracle 目录下的所有文件、/etc/oratab 文件和/home/oracle 目录下的所有文件合并到oracle.tar 文件中,并采用压缩方式。 2、tar -tzf oracle.tar.gz 该命令列出归档文件oracle.tar 中的所有文件列表。 3、tar –xzvf oracle.tar.gz 该命令将归档文件分解并解压缩到原有文件的路径中。 二.bin结尾的安装包,这种包类似于RPM包,安装也比较简单 1、打开一个SHELL,即终端 2、用CD 命令进入源代码压缩包所在的目录 3、给文件加上可执行属性:chmod +x ******.bin(中间是字母x,小写) 3、执行命令:./******.bin(realplayer for linux就是这样的安装包) 如何卸载:把安装时中选择的安装目录删除就OK 三. rpm rpm 命令的功能有很多,在这里我们只介绍如何利用rpm 安装和查询已安装的软件。 1、安装 rpm 安装软件包的基本语法如下: rpm -i rpm 包名 例如 rpm -i tomcat4.rpm 该命令将安装Tomcat 软件并进行相关系统配置。 2、升级 rpm 升级软件包的基本语法如下: rpm -U rpm 包名 例如 rpm –U tomcat4.rpm 该命令将升级Tomcat 软件并进行相关系统配置。 3、查看已安装的软件 有的时候,了解系统中都已经安装了哪些软件包以及它们的用途是很有用的,R P M 的查询参数就可以做到这一点。要想列出已经安装的全部软件包,可以通过以下命令: rpm -qa 可以使用g r e p 命令指定软件包的名称(或者部分名),称如下所示:

IBM-AIX命令详解

AIX常用命令 AIX系统的设备有四种状态: Undefined(未定义):表示系统无法识别该设备,也就是系统找不到该设备。Defined(定义):表示系统可以识别设备,但是系统不能使用它。Available(可用):表示该设备在系统中可以使用,用户也可以使用。Stopped(停用):表示设备不能被使用,但操作系统通过驱动程序可以识别它。------------------------------------------------------------------------------- 一、查看错误记录 1、显示错误:errpt 2、显示详细的错误信息:errpt -a 或errpt -a|more 3、清空错误记录信息:errclear 0 二、查看文件系统 df -g 【以G为单位检查】或df -k 【以K为单位检查】 三、查看系统中的设备及其特征 lsdev -C显示的设备都已经安装在系统中。 lsdev -P显示系统预定义设备数据库中的所有设备,即系统能支持的设备。【举例】 1、查看硬盘: lsdev –Cc disk 2、看磁带机: lsdev –Cc tape 3、查看适配卡: lsdev –Cc adapter 4、处理器个数:lsdev –C|grep proc 【grep:强大的文本搜索工具,并把匹配的行打印出来(类似于find)】

5、查看预定义设备对象类中的所有设备,并具有列头:lsdev -P -H 6、要列出预定义设备对象类中的受支持的设备类,输入:lsdev -P -r class 7、要列出其名称以字母‘hdi’开头的所有设备:lsdev -l hdi* 8、要列出所有子pci0 总线,请输入:lsdev -p pci0 9、要列出其名称包含在文件/tmp/f 中的设备,输入:cat /tmp/f | lsdev -l - 四、显示系统的配置信息、诊断信息和重要产品数据(VPD)信息 lscfg -vp获取所有已配置硬件设备的详细信息 【举例】 1、查看硬盘信息: lscfg –vl hdiskx x表示数字 2、查看网卡信息: lscfg –vl entx x表示数字 3、查看磁带机: lscfg –vl rmtx x表示数字 4、要在每一行显示带有设备描述的系统配置:lscfg -s 5、要显示由逻辑名ent0 指定的特定设备的VPD:lscfg -v -l ent0 6、要显示不带有VPD 的逻辑名hdisk(或proc)所指定设备的名称、位置和描述:lscfg -l hdisk(或proc)\* 7、要将开放固件设备树中相应节点的VPD 显示到ent0 设备中: lscfg -vp -l ent0 五、查看硬件属性 lsattr:用于读取指定设备的配置属性,部分属性可更改 lsattr –El获取已配置设备的属性信息。 【举例】 查看硬盘属性: lsattr –El hdiskx x表示数字

iostat命令详解

iostat命令详解 2009-11-02 20:41 iostat [ -c | -d ] [ -k ] [ -t ] [ -V ] [ -x [ device ] ] [ interval [ count ] ]基本语法: iostat interval count option - 让你指定所需信息的设备,像磁盘、cpu或者终端(-d , -c , -t or -tdc ) 。x 选项给出了完整的统计结果。iostat的默认参数是tdc(terminal, disk, and CPU)。如果任何其他的选项被指定,这个默认参数将被完全替代。 interval –统计运行的间隔时间(秒), count –统计运行的次数 其中,-c为汇报CPU的使用情况;-d为汇报磁盘的使用情况;-k表示每秒按kilobytes 字节显示数据;-t为打印汇报的时间;-v表示打印出版本信息和用法;-x device指定要统计的设备名称,默认为所有的设备; iostat -d -k -t 2 Device: 显示磁盘名称 tps: 表示每秒钟输出到物理磁盘的传输次数。一次传输就是一个对物理磁盘的 I/O 请求。多个逻辑请求可被并为对磁盘的一个单一 I/O 请求。传输具有中等的大小。 kB_read/s: 每秒从磁盘读取的数据量,单位为KB。 kB_wrtn/s: 每秒从写入磁盘的数据量,单位为KB。 Kb_read: 读取的 KB 总数。 Kb_wrtn: 写入的 KB 总数 iostat -x 1 10 rrqm/s:每秒进行 merge 的读操作数目。即 delta(rmerge)/s wrqm/s:每秒进行 merge 的写操作数目。即 delta(wmerge)/s r/s:每秒完成的读 I/O 设备次数。即 delta(rio)/s w/s:每秒完成的写 I/O 设备次数。即 delta(wio)/s rsec/s:每秒读扇区数。即 delta(rsect)/s wsec/s: 每秒写扇区数。即 delta(wsect)/s rkB/s: 每秒读K字节数。是 rsect/s 的一半,因为每扇区大小为512字节。(需要计算) wkB/s:每秒写K字节数。是 wsect/s 的一半。(需要计算) avgrq-sz:平均每次设备I/O操作的数据大小 (扇区)。 delta(rsect+wsect)/delta(rio+wio) avgqu-sz:平均I/O队列长度。即 delta(aveq)/s/1000 (因为aveq的单位为毫秒)。await:平均每次设备I/O操作的等待时间 (毫秒)。即 delta(ruse+wuse)/delta(rio+wio) svctm: 平均每次设备I/O操作的服务时间 (毫秒)。即 delta(use)/delta(rio+wio) %util: 一秒中有百分之多少的时间用于 I/O 操作,或者说一秒中有多少时间 I/O 队列是非空的。即 delta(use)/s/1000 (因为use的单位为毫秒) svctm 一般要小于 await (因为同时等待的请求的等待时间被重复计算了),svctm 的大小一般和磁盘性能有关,CPU/内存的负荷也会对其有影响,请求过多也会间接导致 svctm 的增加。await 的大小一般取决于服务时间(svctm) 以及 I/O 队列的长度和 I/O 请求的发出

Linux下的tar压缩解压缩命令详解

Linux下的压缩解压缩命令详解 linux zip命令zip -r myfile.zip ./* 将当前目录下的所有文件和文件夹全部压缩成myfile.zip文件,-r表示递归压缩子目录下所有文件. 2.unzip unzip -o -d /home/sunny myfile.zip 把myfile.zip文件解压到 /home/sunny/ -o:不提示的情况下覆盖文件;-d:-d /h linux zip命令 zip -r myfile.zip ./* 将当前目录下的所有文件和文件夹全部压缩成myfile.zip文件,-r表示递归压缩子目录下所有文件. 2.unzip unzip -o -d /home/sunny myfile.zip 把myfile.zip文件解压到/home/sunny/ -o:不提示的情况下覆盖文件; -d:-d /home/sunny 指明将文件解压缩到/home/sunny目录下; 3.其他 zip -d myfile.zip smart.txt 删除压缩文件中smart.txt文件 zip -m myfile.zip ./rpm_info.txt 向压缩文件中myfile.zip中添加rpm_info.txt文件 ------------------------------------------------------------------------------- 要使用zip 来压缩文件,在shell 提示下键入下面的命令: zip -r filename.zip filesdir 在这个例子里,filename.zip 代表你创建的文件,filesdir代表你想放置新zip 文件的目录。-r 选项指定你想递归地(recursively)包括所有包括在filesdir目录中的文件。 要抽取zip 文件的内容,键入以下命令:

linux中的tar解压命令说明

linux解压 tar命令 tar命令 tar [-cxtzjvfpPN] 文件与目录 .... 参数: -c :建立一个压缩文件的参数指令(create 的意思); -x :解开一个压缩文件的参数指令! -t :查看 tarfile 里面的文件! 特别注意,在参数的下达中, c/x/t 仅能存在一个!不可同时存在! 因为不可能同时压缩与解压缩。 -z :是否同时具有 gzip 的属性?亦即是否需要用 gzip 压缩? -j :是否同时具有 bzip2 的属性?亦即是否需要用 bzip2 压缩? -v :压缩的过程中显示文件!这个常用,但不建议用在背景执行过程! -f :使用档名,请留意,在 f 之后要立即接档名喔!不要再加参数! 例如使用『 tar -zcvfP tfile sfile』就是错误的写法,要写成 『 tar -zcvPf tfile sfile』才对喔! -p :使用原文件的原来属性(属性不会依据使用者而变) -P :可以使用绝对路径来压缩! -N :比后面接的日期(yyyy/mm/dd)还要新的才会被打包进新建的文件中! --exclude FILE:在压缩的过程中,不要将 FILE 打包! 范例: 范例一:将整个 /etc 目录下的文件全部打包成为 /tmp/etc.tar [root@linux ~]# tar -cvf /tmp/etc.tar /etc<==仅打包,不压缩! [root@linux ~]# tar -zcvf /tmp/etc.tar.gz /etc<==打包后,以 gzip 压缩[root@linux ~]# tar -jcvf /tmp/etc.tar.bz2 /etc<==打包后,以 bzip2 压缩 # 特别注意,在参数 f 之后的文件档名是自己取的,我们习惯上都用 .tar 来作为辨识。 # 如果加 z 参数,则以 .tar.gz 或 .tgz 来代表 gzip 压缩过的 tar file ~# 如果加 j 参数,则以 .tar.bz2 来作为附档名啊~ # 上述指令在执行的时候,会显示一个警告讯息: # 『tar: Removing leading `/" from member names』那是关於绝对路径的特殊设定。 范例二:查阅上述 /tmp/etc.tar.gz 文件内有哪些文件? [root@linux ~]# tar -ztvf /tmp/etc.tar.gz # 由於我们使用 gzip 压缩,所以要查阅该 tar file 内的文件时, # 就得要加上 z 这个参数了!这很重要的! 范例三:将 /tmp/etc.tar.gz 文件解压缩在 /usr/local/src 底下 [root@linux ~]# cd /usr/local/src [root@linux src]# tar -zxvf /tmp/etc.tar.gz # 在预设的情况下,我们可以将压缩档在任何地方解开的!以这个范例来说,

AIX的iostat命令解析

AIX的iostat命令解析(翻译红皮书) 网友:seagull.li 发布于:2007.12.10 11:50(共有条评论) 查看评论 | 我要评论 1.确定磁盘使用率 $ iostat -T 2 10 System configuration: lcpu=8 drives=29 paths=52 vdisks=0 tty: tin tout avg-cpu: % user % sys % idle % iowait time 0.0 377.0 77.6 6.1 16.2 0.1 11:35:45 Disks: % tm_act Kbps tps Kb_read Kb_wrtn time hdisk5 78.0 6080.0 439.0 12048 112 11:35:45 hdisk4 79.5 11856.5 453.5 23564 149 11:35:45 hdisk6 19.0 1664.0 13.0 3328 0 11:35:45 $ % tm_act 物理磁盘活动的时间百分比 KBPS 某块磁盘传输数据的总量(读或写) tps 某块物理磁盘每秒钟IO 传输的数量 Kb_read 从磁盘上读取数据的总量 Kb_wrtn 写入磁盘的数据总量 如果%tm_act字段显示磁盘非常忙,并且Kbps 字段显示持续的大量数据传输,应考虑散布数据跨越多个磁盘。该命令支持动态的配置改变。如果发现到配置改变,iostat报告发出一个警告,并刷新最新的系统配置。其中% tm_act是指活动时间,kbps是在统计时间内所有Kb_read与Kb_wrtn之和除以时间的值,即每秒传输的字节数如果% tm_act常过70%却只有很低的Kbps,系统可能是有比较多的LV碎片或文件碎片,当都高时则系统正常。tps表示每秒的IO数,不同的磁盘系统其可承受的IO数不同。如果一块磁盘的活动率超过70%,可以通过转移一部分的磁盘活动压力到另一个磁盘上,或者通过多个磁盘驱动器来扩展I/O压力来获得更高的性能。 $ iostat -D hdisk0 (查看某一磁盘的情况) System configuration: lcpu=8 drives=29 paths=52 vdisks=0 hdisk0 xfer: %tm_act bps tps bread bwrtn 4.6 58.3K 8.8 16.5K 41.9K read: rps avgserv minserv maxserv timeouts fails 3.5 5.8 0.3 67.8 0 0 write: wps avgserv minserv maxserv timeouts fails 5.3 11.2 0.6 114.9 0 0 queue: avgtime mintime maxtime avgwqsz avgsqsz sqfull 136.8 0.0 388.4 0.2 0.0 3.8 --------------------------------------------------------------------------------

zip压缩命令详解

语法:unzip 〔选项〕压缩文件名.zip 各选项的含义分别为: -x 文件列表解压缩文件,但不包括指定的file文件。 -v 查看压缩文件目录,但不解压。 -t 测试文件有无损坏,但不解压。 -d 目录把压缩文件解到指定目录下。 -z 只显示压缩文件的注解。 -n 不覆盖已经存在的文件。 -o 覆盖已存在的文件且不要求用户确认。 -j 不重建文档的目录结构,把所有文件解压到同一目录下。 例1:将压缩文件text.zip在当前目录下解压缩。 $ unzip text.zip 例2:将压缩文件text.zip在指定目录/tmp下解压缩,如果已有相同的文件存在,要求unzip命令不覆盖原先的文件。 $ unzip -n text.zip -d /tmp 例3:查看压缩文件目录,但不解压。 $ unzip -v text.zip zgrep命令 这个命令的功能是在压缩文件中寻找匹配的正则表达式,用法和grep命令一样,只不过操作的对象是压缩文件。如果用户想看看在某个压缩文件中有没有某一句话,便可用zgrep命令。 linux zip命令zip -r myfile.zip ./*

\将当前目录下的所有文件和文件夹全部压缩成myfile.zip文件,-r表示递归压缩子目录下所有文件. 2.unzip unzip -o -d /home/sunny myfile.zip 把myfile.zip文件解压到 /home/sunny/ -o:不提示的情况下覆盖文件; -d:-d /home/sunny 指明将文件解压缩到/home/sunny目录下; 3.其他 zip -d myfile.zip smart.txt 删除压缩文件中smart.txt文件 zip -m myfile.zip ./rpm_info.txt 向压缩文件中myfile.zip中添加rpm_info.txt文件 ------------------------------------------------------------------------------- 要使用 zip 来压缩文件,在 shell 提示下键入下面的命令: zip -r filename.zip filesdir 在这个例子里,filename.zip 代表你创建的文件,filesdir 代表你想放置新 zip 文件的目录。 -r 选项指定你想递归地(recursively)包括所有包括在 filesdir 目录中的文件。 要抽取 zip 文件的内容,键入以下命令: unzip filename.zip 你可以使用 zip 命令同时处理多个文件和目录,方法是将它们逐一列出,并用空格间隔:zip -r filename.zip file1 file2 file3 /usr/work/school 上面的命令把 file1、file2、 file3、以及 /usr/work/school 目录的内容(假设这个目录存在)压缩起来,然后放入 filename.zip 文件中。 tar 命令详解 -c: 建立压缩档案 -x:解压 -t:查看内容 -r:向压缩归档文件末尾追加文件 -u:更新原压缩包中的文件 这五个是独立的命令,压缩解压都要用到其中一个,可以和别的命令连用但只能用其中一个。 下面的参数是根据需要在压缩或解压档案时可选的。 -c: 建立压缩档案 -x:解压 -t:查看内容 -r:向压缩归档文件末尾追加文件 -u:更新原压缩包中的文件

Linux命令及TroubleShooting技术总结

一、Linux操作系统安装 二、Linux基本命令 1、修改操作系统的Shell (修改bash,可以tab命令补全,上下翻输入过的命令) #echo $SHELL /usr/bin/sh #vi /etc/passwd root:!:0:0::/home0:/usr/bin/bash

2、查看AIX操作系统位数的方法: #bootinfo -y #bootinfo –K 2、查看操作系统版本 #oslevel –r 3、查看小型机硬件型号 #prtconf |more #lscfg -vp | grep -p alterable (查看硬件卡)4、查看CPU参数 #prtconf #lsdev –Cc processor #vmstat 5、查看内存参数 #prtconf #vmstat 6、查看硬盘参数

#lsdev -Cc disk #prtconf System Model: IBM,9110-51A (机器型号) Machine Serial Number: 0697AC0 (机器序列号) Processor Type: PowerPC_POWER5 (Power Cpu 类型) Number Of Processors: 2 (Cpu 个数) Processor Clock Speed: 2097 MHz CPU Type: 64-bit Kernel Type: 64-bit (Cpu 位数) LPAR Info: 1 06-97AC0 Memory Size: 1904 MB (内存总数) Good Memory Size: 1904 MB Platform Firmware level: Not Available Firmware Version: IBM,SF240_332 Console Login: enable Auto Restart: true Full Core: false Network Information Host Name: aix IP Address: 192.168.1.18 (网卡IP地址) Sub Netmask: 255.255.255.0 Gateway: 192.168.1.1 Name Server: 211.100.30.29 Domain Name: Paging Space Information Total Paging Space: 512MB Percent Used: 42% + hdisk1 U788C.001.AAA8364-P1-T11-L5-L0 16 Bit LVD SCSI Disk Drive (73400 MB) (硬盘信息)+ hdisk0 U788C.001.AAA8364-P1-T11-L8-L0 16 Bit LVD SCSI Disk Drive (73400 MB) (硬盘信息)

Linux各种包安装命令(.rpm .src .tar.gz .bin)

各种包安装命令(.rpm .src .tar.gz .bin) 几乎所有的Linux发行版本都使用某种形式的软件包管理安装、更新和卸载软件。与直接从源代码安装相比,软件包管理易于安装和卸载;易于更新已安装的软件包;易于保护配置文件;易于跟踪已安装文件。 1. RPM全称是Red Hat Package Manager(Red Hat包管理器)。RPM本质上就是一个包,包含可以立即在特定机器体系结构上安装和运行的Linux软件。 大多数Linux RPM软件包的命名有一定的规律,它遵循名称-版本-修正版-类型-MYsoftware-1.2 -1.i386.rpm 。 2.安装RPM包软件 #rpm -ivh MYsoftware-1.2 -1.i386.rpm RPM命令主要参数: -i 安装软件。 -t 测试安装,不是真的安装。 -p 显示安装进度。 -f 忽略任何错误。 -U 升级安装。 -v 检测套件是否正确安装。 这些参数可以同时采用。更多的内容可以参考RPM的命令帮助。 3.卸载软件 #rpm -e 软件名 需要说明的是,上面代码中使用的是软件名,而不是软件包名。例如,要卸载software-1.2.-1.i386.rpm这个包时,应执行: #rpm -e software 4.强行卸载RPM包 有时除去一个RPM是不行的,尤其是系统上有别的程序依赖于它的时候。如果执行命令会显示如下错误信息: ## rpm -e xsnow error: removing these packages would break dependencies: /usr/X11R6/bin/xsnow is needed by x-amusements-1.0-1 在这种情况下,可以用--force选项重新安装xsnow: ## rpm -ivh --force xsnow-1.41-1.i386.rpm xsnow 这里推荐使用工具软件Kleandisk,用它可以安全彻底清理掉不再使用的RPM包。 ----------------------------------------------------------------------- 1、安装.rpm包 # rpm -i[vh] your-package 二、安装.src.rpm包 Method 1: # rpm -i[vh] your-package.src.rpm # cd /usr/src/redhat/SPECS # uname -m

相关文档
最新文档