一.Ubuntu解压缩zip,tar,tar.gz,tar.bz2
ZIP
zip可能是目前使用得最多的文档压缩格式。它最大的优点就是在不同的操作系统平台,比如Linux, Windows以及Mac OS,上使用。缺点就是支持的压缩率不是很高,而tar.gz和tar.gz2在压缩率方面做得非常好。闲话少说,我们步入正题吧:
我们可以使用下列的命令压缩一个目录:
# zip -r archive_name.zip directory_to_compress
下面是如果解压一个zip文档:
# unzip archive_name.zip
TAR
Tar是在Linux中使用得非常广泛的文档打包格式。它的好处就是它只消耗非常少的CPU以及时间去打包文件,他仅仅只是一个打包工具,并不负责压缩。下面是如何打包一个目录:
# tar -cvf archive_name.tar directory_to_compress
如何解包:
# tar -xvf archive_name.tar.gz
上面这个解包命令将会将文档解开在当前目录下面。当然,你也可以用这个命令来捏住解包的路径:
# tar -xvf archive_name.tar -C /tmp/extract_here/
TAR.GZ
这种格式是我使用得最多的压缩格式。它在压缩时不会占用太多CPU的,而且可以得到一个非常理想的压缩率。使用下面这种格式去压缩一个目录:
# tar -zcvf archive_name.tar.gz directory_to_compress
解压缩:
# tar -zxvf archive_name.tar.gz
上面这个解包命令将会将文档解开在当前目录下面。当然,你也可以用这个命令来捏住解包的路径:
# tar -zxvf archive_name.tar.gz -C /tmp/extract_here/
TAR.BZ2
这种压缩格式是我们提到的所有方式中压缩率最好的。当然,这也就意味着,它比前面的方式要占用更多的CPU与时间。这个就是你如何使用tar.bz2进行压缩。
# tar -jcvf archive_name.tar.bz2 directory_to_compress
上面这个解包命令将会将文档解开在当前目录下面。当然,你也可以用这个命令来捏住解包的路径:
# tar -jxvf archive_name.tar.bz2 -C /tmp/extract_here/
二.Ubuntu cp命令
功能:将给出的文件或目录拷贝到另一文件或目录中
语法:cp [选项] 源文件或目录 目标文件或目录
说明:该命令把指定的源文件复制到目标文件或把多个源文件复制到目标目录中。
常用选项:
- a 该选项保留链接、文件属性,并递归地拷贝目录,其作用等于dpR选项的组合。
- d 拷贝时保留链接。
- f 删除已经存在的目标文件而不提示。
- i 与f命令相反,在覆盖目标文件之前将给出提示要求用户确认。回答y时目标文件将被覆盖,是交互式拷贝。
- p 此时cp除复制源文件的内容外,还将把其修改时间和访问权限也复制到新文件中。
- r 若给出的源文件是一目录文件,此时cp将递归复制该目录下所有的子目录和文件。此时目标文件必须为一个目录名。
- l 不作拷贝,只是链接文件。
建议拷贝时候使用-i 命令,以防止cp命令破坏另一个文件。
例如:cp - i /etc/apt/source.list /home/db/source.list.bk
该命令将文件source.list拷贝到/home/db下,并改名为source.list.bk
若不希望重新命名,可以使用以下命令: cp - i /etc/apt/source.list /home/db/
例如:cp - r /home/db/ /home/www/
将/home/db目录中的所有文件及其子目录拷贝到目录/home/www中。
三.du -sh*查看当前目录下的文件夹大小
du -sh*查看当前目录下的文件夹大小
u 命令
用途
概述磁盘使用。
语法
du [ -a | -s ] [ -k ] [ -m ] [ -g ][ -l ] [ -r ] [ -x ] [ -H | -L ][ File ... ]
描述
du命令显示用于文件的块的数量。如果指定的File参数实际上是一个目录,就要报告该目录内的所有文件。如果没有提供 File参数,du命令使用当前目录内的文件。
如果File参数是一个目录,那么报告的块的数量就是分配到目录中文件以及分配到目录自身的块之和。 www.2cto.com
指定-a标志,报告个体文件中块数量。不管是否使用了-a标志,由File参数指定的个体文件总是要列出。
指定-s标志,报告用于所有指定文件和目录中所有文件的全部块。
块计数包括每个文件的间接块。块计数是通过 512 字节单位计算的,它与
系统使用的群集大小无关。指定-k标志,通过 1024 字节单位计算块数。
注:
具有多个链接的文件只为一个条目计数和书写。
由于块计数只基于文件大小,所以在报告的块数中,未分配的块是没有包含进去的。
如果du得不到文件属性,或者无法读取目录,它就报告一个错误,并且会影响命令的退出状态。
标志
-a 为每个指定文件显示磁盘使用情况,或者为目录中每个文件显示各自磁盘使用情况。将该标志与-s标志进行对比。
-g 用 GB 单位计算块数,而不是用缺省的 512 字节单位。对磁盘使用情况的输出值要用浮点数,这是因为如果用字节为单位的话,值会非常大。
-H 如果在命令行指定了符号链接,du 命令将统计链接引用的文件或文件层次结构的大小。
-k 用 1024 字节单位计算块数,而不是用缺省的 512 字节单位。
-l 在文件链接和多链接之间均匀地分配块。根据缺省值,有两个或者更多链接的文件只计数一次。
-L 如果在命令行指定了符号链接或者在文件层次结构的遍历中多次遇到符号链接,则 du 命令应统计链接引用的文件或文件层次结构的大小。
-m 用 MB 单位计算块数,而不是用缺省的 512 字节单位。对磁盘使用情况的输出值要用浮点数,这是因为如果用字节为单位的话,值会非常大。
-r 报告不可访问的文件或者目录名。此为缺省设置。
-s 为所有指定文件显示整个磁盘使用情况,或者为一个目录中的所有文件显示总的磁盘使用情况。将该标志与-a标志进行对比。 www.2cto.com
-x 在评估文件大小时,只评估那些与File参数指定的文件或者目录驻留在相同设备上的文件。例如,您可以指定一个在多个设备上包含文件的目录。这种情况下,-x标志就为与目录驻留在相同设备的所有文件显示块的大小。
如果指定了全部-k、-m和-g标志,或者是其中任意两个,最后指定的那个起作用。用标志-m和-g输出磁盘使用情况就会近似成最接近的第二位十进制数。
退出状态
此命令返回下列出口值:
0 成功结束。
>0 发生错误。
示例
要概述一个目录树及其每个子树的磁盘使用情况,请输入:
du /home/fran
这在/home/fran目录及其每个子目录中显示了磁盘块数。
要通过 1024 字节块概述一个目录树及其每个子树的磁盘使用情况,请输入:
du -k /home/fran
这在/home/fran目录及其每个子目录中显示了 1024 字节磁盘块数。
要通过 MB 磁盘块概述一个目录树及其每个子树的磁盘使用情况,请输入:
du -m /home/fran
这在/home/fran目录及其每个子目录中显示了 MB 磁盘块数(近似到最接近的第二位十进制数)。
要通过 GB 块概述一个目录树及其每个子树的磁盘使用情况,请输入:
du -g /home/fran
这在/home/fran目录及其每个子目录中显示了 GB 磁盘块数(近似到最接近的第二位十进制数)。
要显示每个文件磁盘使用情况,请输入:
du -a /home/fran www.2cto.com
这显示了包含在每个文件以及目录/home/fran的子目录中的磁盘块数。在目录旁的数字就是该目录树的磁盘使用情况。在常规文件旁的数字就是该文件单独的磁盘使用情况。
要只显示一个目录树的全部磁盘使用情况,请输入:
du -s /home/fran
-s标志控制du命令,只显示/home/fran目录和其中包含的文件的磁盘使用情况的总和。通过缺省值,如果du命令无法读取一个文件或者目录,就显示一条错误消息。
除了在 /home/fran 的遍历中找到的常规文件,还要显示所有符号链接引用的文件或文件层次结构的磁盘使用,请输入:
du -L /home/fran
要报告符号链接 mylink 引用的文件或文件层次结构的磁盘使用,请输入:
du -H mylink
文件 /usr/bin/du 包含命令du。