Ubuntu 如何压缩mysqldump命令的输出?

Ubuntu 如何压缩mysqldump命令的输出?,ubuntu,cron,zip,pipe,mysqldump,Ubuntu,Cron,Zip,Pipe,Mysqldump,我和一个老太婆在一起 #!/bin/sh #string representation for current day day=$(date +%Y%m%d) #archive db content /usr/bin/mysqldump --opt --host=db_host --user=db_user --password=db_pass db_name | /bin/gzip -c -9 > ${day}_db_name.gz 它运行得很好。 但是,我想创建一个zip文件,而

我和一个老太婆在一起

#!/bin/sh

#string representation for current day
day=$(date +%Y%m%d)

#archive db content
/usr/bin/mysqldump --opt --host=db_host --user=db_user --password=db_pass db_name | /bin/gzip -c -9 > ${day}_db_name.gz
它运行得很好。 但是,我想创建一个zip文件,而不是使用zip压缩

我试过了

/usr/bin/mysqldump --opt --host=db_host --user=db_user --password=db_pass db_name | zip -q -9 > ${day}_db_name.zip
结果是一个归档文件,里面有一个名为“-”的文件。 我的问题是如何将该名称更改为上一个生成的命令,20130725_db_name


它说了一些关于zip和输入、管道和“流式输入和输出”的内容,但不幸的是,这对我来说太难理解了

Try的可能重复“…| zip-q-9${day}{u db_name.zip-”@tette感谢您尝试解决它,不幸的是dash产生了这些错误:
zip错误:无事可做!(-)
mysqldump:write时出现错误32
@Jay是的,这是一个类似的问题,但没有得到回答。。我的意思是我尝试了
zip-qoutput.zip-@
,得到了类似于上面的错误。从上面的答案可以看出,它不能在一条线和输出管道中完成。不幸的是,python脚本不是我的选择。但谢谢你指出这一点:)