我正在使用备份脚本,并且想要压缩文件目录:
tar czf ~/backup.tgz /home/username/drupal/sites/default/files
这可以压缩它,但是当我解压生成的文件时,它包括完整的文件结构:这些文件位于中home/username/drupal/sites/default/files
。
有没有一种方法可以排除父目录,从而使生成的tar只知道最后一个目录(files
)?
Answers:
cd /home/username/drupal/sites/default/files
tar czf ~/backup.tgz *
-C
并--directory
没有为我在Ubuntu 16.04的工作。这是唯一可行的选择。
使用--directory选项:
tar czf ~/backup.tgz --directory=/home/username/drupal/sites/default files
--directory="/home/username/drupal/sites/default files"
到达目的地的前方~/backup.tgz
。
--directory
选项给出的路径不是"/home/username/drupal/sites/default files"
。它是/home/username/drupal/sites/default
,后跟一个位置参数,用于指定要压缩的目录的名称files
。
嗨,当在指定目录中输入不可能(Makefiles等)时,我有一个更好的解决方案
tar -cjvf files.tar.bz2 -C directory/contents/to/be/compressed .
不要忘了最后的点(。)!
.
在tar的根目录中留下一个文件夹
对我来说-C或--directory无效,我使用了
cd source/directory/or/file
tar -cvzf destination/packaged-app.tgz *.jar
# this will put your current directory to what it previously was
cd -
tar czf $sourcedir/$backup_dir.tar --directory=$sourcedir WEB-INF en
tar -xvf $deploydir/med365/$backup_dir.tar -C $deploydir/med365/
scp -r -i $privatekey $sourcedir/$backup_dir.tar $server:$deploydir/med365/
echo "File uploaded.. deployment folders"
ssh -i $privatekey $server tar -xvf $deploydir/med365/$backup_dir.tar -C $deploydir/med365/