我正在创build一个包含一些文件和文件夹的tar.gz文件,如下所示:
/bin/tar cfz /usr/local/backups/mybackup-${DATENAME}.tar.gz /usr/local/backups/db-${DATENAME}.sql.gz /usr/local/tomcat/webapps/MyApp/myapp_folder /usr/local/tomcat/myapp.properties
但path存储为不包含/ usr/local 。 tar也给消息先删除/但文件被创build。
现在,当我将这个文件传输到其他系统,并想解压缩它:
tar -zxvf mybackup-2011-APR-18.tar.gz
它在当前目录中创buildusr目录。
我如何压缩和解压档案,并将我的文件恢复到原始文件夹(在/usr树而不是./usr )?
这将做到这一点:
(cd / && tar -zxvf mybackup-2011-APR-18.tar.gz )
或者,您可以使用-P创build存档:
/bin/tar -P cfz /usr/local/backups/mybackup-${DATENAME}.tar.gz /usr/local/backups/db-${DATENAME}.sql.gz /usr/local/tomcat/webapps/MyApp/myapp_folder /usr/local/tomcat/myapp.properties
这不会删除存档中的文件名的初始值。