Linux命令行单独打包目录或文件的方法

发布时间:2020-04-21编辑:脚本学堂
本文介绍下,在Linux中,使用命令行单独打包目录或文件的方法,有需要的朋友,参考下吧。

在日常的linux系统管理或运维中,对数据与文件的备份,可以说是一件相当平常的工作。
对重要数据的定期备份与恢复工作,将会贯穿每天的linux管理工作中。

备份看起来很简单,但不同的备份方式,可能会影响到出现问题时数据恢复所需要的时间。
比方说对 /home 目录建立全备份,在整个服务器丢失数据的时候可以很快地进行恢复。但如果是某个用户丢失了数据的时候,那么在恢复的过程中,就需要先展开整个压缩包,然后再在里面找出相应用户的数据来进行恢复,这样明显就慢了很多。

为安全考虑,不仅要对 /home 目录进行全备份,还会给每个用户的目录也进行全备份。

实现以上的安全备份,您需要用到今天介绍的命令,看下面的例子吧。

通过下面这一句命令,实现:为当前目录下的所有目录进行单独压缩,生成单独的压缩包。
 

复制代码 代码示例:
find . -maxdepth 1 -type d|sed -n 's/./(.*)/tar zcvf 1.tar.gz &/p' | sh

更多用法。

1,单独打包所有以www开头的目录
 

复制代码 代码示例:
find . -maxdepth 1 -type d -name "www*"|sed -n 's/./(.*)/tar zcvf 1.tar.gz &/p' | sh

2,单独打包文件不打包目录(并不常用,仅作探讨)
 

复制代码 代码示例:
find . -maxdepth 1 -type f|sed -n 's/./(.*)/tar zcvf 1.tar.gz &/p' | sh