从标准输入创建 tar 文件
create tar file from stdin
我想即时备份 mysql 到磁带。有的喜欢
mysqldump|tar --filename=mysqlbackup.sql > /dev/tape
我想要磁带的内容是一个 tar 文件,而这个文件的内容是 "mysqldump.sql"
所以一个命令"tar -t < /dev/tape"应该输出
mysqldump.sql
我一开始不想保存mysql转储到文件,因为我没有space和IO资源。我想即时进行。
我不想要 "mysqldump > /dev/tape" 因为没有元信息,也无法知道磁带有任何内容/
用户parkydr给出了更好的答案:
您不能从标准输入 创建tar 文件。 tar 中的每个文件都有一个包含文件长度的文件头,因此 tar 在写入文件头之前必须知道有多少数据。 – 帕克博士
只是为了将来的访问者:mysqldump
生成单个文件,这就是为什么将它存储在磁带上的最合适的方式可能是:
mysqldump| bzip2 - > mysqldump-`date +"%y-%b-%d"`.bz2
我想即时备份 mysql 到磁带。有的喜欢
mysqldump|tar --filename=mysqlbackup.sql > /dev/tape
我想要磁带的内容是一个 tar 文件,而这个文件的内容是 "mysqldump.sql"
所以一个命令"tar -t < /dev/tape"应该输出
mysqldump.sql
我一开始不想保存mysql转储到文件,因为我没有space和IO资源。我想即时进行。
我不想要 "mysqldump > /dev/tape" 因为没有元信息,也无法知道磁带有任何内容/
用户parkydr给出了更好的答案:
您不能从标准输入 创建tar 文件。 tar 中的每个文件都有一个包含文件长度的文件头,因此 tar 在写入文件头之前必须知道有多少数据。 – 帕克博士
只是为了将来的访问者:mysqldump
生成单个文件,这就是为什么将它存储在磁带上的最合适的方式可能是:
mysqldump| bzip2 - > mysqldump-`date +"%y-%b-%d"`.bz2