首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在bash中使用gifsicle和exec来压缩gif?

如何在bash中使用gifsicle和exec来压缩gif?
EN

Stack Overflow用户
提问于 2015-02-05 18:38:11
回答 1查看 1.2K关注 0票数 1

现在,我正在尝试使用gifsicle压缩文件夹中的所有gif图像,如下所示:

代码语言:javascript
复制
find . -name '*.gif' -exec gifsicle -O '{}' \;

但是我得到了以下输出(错误)

代码语言:javascript
复制
gifsicle: <stdout>: is a terminal
gifsicle: <stdout>: is a terminal
gifsicle: <stdout>: is a terminal
gifsicle: <stdout>: is a terminal
gifsicle: <stdout>: is a terminal
gifsicle: <stdout>: is a terminal
gifsicle: <stdout>: is a terminal
gifsicle: <stdout>: is a terminal
gifsicle: <stdout>: is a terminal
gifsicle: <stdout>: is a terminal
gifsicle: <stdout>: is a terminal
gifsicle: <stdout>: is a terminal
gifsicle: <stdout>: is a terminal
gifsicle: <stdout>: is a terminal
gifsicle: <stdout>: is a terminal
gifsicle: While reading './4dlife/src/static/img/loading.gif' frame #10:
gifsicle:   warning: trailing garbage after GIF ignored
gifsicle: <stdout>: is a terminal
gifsicle: While reading './4dlife/src/static/img/ajax-loader.gif' frame #8:
gifsicle:   warning: trailing garbage after GIF ignored
gifsicle: <stdout>: is a terminal
gifsicle: <stdout>: is a terminal
gifsicle: <stdout>: is a terminal
gifsicle: <stdout>: is a terminal
gifsicle: While reading './4dlife/src/static/img/ui/Loader.gif' frame #10:
gifsicle:   warning: trailing garbage after GIF ignored
gifsicle: <stdout>: is a terminal
gifsicle: While reading './4dlife/src/static/img/ui/LoaderPeque.gif' frame #31:
gifsicle:   warning: trailing garbage after GIF ignored
gifsicle: <stdout>: is a terminal
gifsicle: While reading './4dlife/src/static/img/ui/preloader/ajax-loader-blue.gif' frame #4:
gifsicle:   warning: trailing garbage after GIF ignored
gifsicle: <stdout>: is a terminal
gifsicle: While reading './4dlife/src/static/img/ui/preloader/ajax-loader-green.gif' frame #8:
gifsicle:   warning: trailing garbage after GIF ignored
gifsicle: <stdout>: is a terminal
gifsicle: While reading './4dlife/src/static/img/ui/preloader/spinner_squares_circle.gif' frame #8:
gifsicle:   warning: trailing garbage after GIF ignored
gifsicle: <stdout>: is a terminal
gifsicle: <stdout>: is a terminal
gifsicle: <stdout>: is a terminal
gifsicle: While reading './4dlife/src/production/img/loading.gif' frame #10:
gifsicle:   warning: trailing garbage after GIF ignored
gifsicle: <stdout>: is a terminal
gifsicle: While reading './4dlife/src/production/img/ajax-loader.gif' frame #8:
gifsicle:   warning: trailing garbage after GIF ignored
gifsicle: <stdout>: is a terminal
gifsicle: <stdout>: is a terminal
gifsicle: <stdout>: is a terminal
gifsicle: <stdout>: is a terminal
gifsicle: While reading './4dlife/src/production/img/ui/Loader.gif' frame #10:
gifsicle:   warning: trailing garbage after GIF ignored
gifsicle: <stdout>: is a terminal
gifsicle: While reading './4dlife/src/production/img/ui/LoaderPeque.gif' frame #31:
gifsicle:   warning: trailing garbage after GIF ignored
gifsicle: <stdout>: is a terminal
gifsicle: While reading './4dlife/src/production/img/ui/preloader/ajax-loader-blue.gif' frame #4:
gifsicle:   warning: trailing garbage after GIF ignored
gifsicle: <stdout>: is a terminal
gifsicle: While reading './4dlife/src/production/img/ui/preloader/ajax-loader-green.gif' frame #8:
gifsicle:   warning: trailing garbage after GIF ignored
gifsicle: <stdout>: is a terminal
gifsicle: While reading './4dlife/src/production/img/ui/preloader/spinner_squares_circle.gif' frame #8:
gifsicle:   warning: trailing garbage after GIF ignored
gifsicle: <stdout>: is a terminal

我尝试过使用各种其他选项,如-O2、-O3或--optimize,但仍然没有成功。有什么建议吗?

EN

回答 1

Stack Overflow用户

发布于 2015-02-05 19:50:09

gifsicle抱怨是因为它不想将处理后的gif写入终端。您必须将标准输出重定向到一个新文件,或者告诉gifsicle在适当的位置使用--batch

代码语言:javascript
复制
find . -name '*.gif' -exec gifsicle -O '{}' > optimized_'{}' \;

代码语言:javascript
复制
find . -name '*.gif' -exec gifsicle --batch -O '{}' \;
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/28341744

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档