📅  最后修改于: 2023-12-03 15:24:43.847000             🧑  作者: Mango
在Shell-Bash中,我们可以使用 tar
命令来创建压缩文件,但是默认情况下,tar
命令会在当前目录下创建压缩文件,如果我们想要将压缩文件创建到另一个目录,该怎么做呢?
我们可以通过以下两种方式来实现:
tar
命令提供了 -C
选项,可以用来指定压缩文件要创建到的目录,例如:
tar -czvf /path/to/destination/archive.tar.gz -C /path/to/source/ .
这个命令会将 /path/to/source/
目录下的所有文件和子目录压缩成 archive.tar.gz
文件,并创建到 /path/to/destination/
目录下。
-c
选项表示新建压缩文件-z
选项表示使用 gzip 压缩算法-v
选项表示输出详细信息-f
选项表示指定压缩文件的名称和路径/path/to/destination/archive.tar.gz
表示压缩文件的名称和路径-C /path/to/source/
表示切换到 /path/to/source/
目录.
表示当前目录,即压缩 /path/to/source/
目录下的所有文件和子目录另一种方式是使用 cd
命令先切换到要创建压缩文件的目录,然后再执行 tar
命令,例如:
cd /path/to/destination/
tar -czvf archive.tar.gz /path/to/source/
这个命令的效果和上面的命令是一样的,只不过使用了 cd
命令切换目录,然后直接指定了要压缩的文件和目录,压缩文件就会创建到 /path/to/destination/
目录下。
注意:如果压缩文件名中没有包含路径信息,则会在当前目录下创建压缩文件。
以上就是两种将 tar
文件创建到另一个目录的方法,可以根据实际需求选择其中一种。在编写脚本时尤其要注意压缩文件的路径和名称,以免出错。