循环播放gif图片

install 首先使用macport安装 imagemagick软件包,因为macport是编译安装软件包,所以安装过程会比较久(~9min)。 更加习惯homebrew的可以参考 官网imagemagick download 安装。 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 ❯ sudo port install imagemagick Password: ---> Computing dependencies for ImageMagickWarning: cltversion: The Command Line Tools are installed, but MacPorts cannot determine the version. Warning: cltversion: For a possible fix, please see: https://trac.macports.org/wiki/ProblemHotlist#reinstall-clt The following dependencies will be installed: aom brotli .... .... . . ---> Activating webp @1.2.1_0 ---> Cleaning webp ---> Fetching archive for ImageMagick ---> Attempting to fetch ImageMagick-6.9.11-60_1+x11.darwin_21.x86_64.tbz2 from https://packages.macports.org/ImageMagick ---> Attempting to fetch ImageMagick-6.9.11-60_1+x11.darwin_21.x86_64.tbz2 from https://pek.cn.packages.macports.org/macports/packages/ImageMagick ---> Attempting to fetch ImageMagick-6.9.11-60_1+x11.darwin_21.x86_64.tbz2 from https://kmq.jp.packages.macports.org/ImageMagick ---> Fetching distfiles for ImageMagick ---> Attempting to fetch ImageMagick-6.9.11-60.tar.xz from https://distfiles.macports.org/ImageMagick ---> Verifying checksums for ImageMagick ---> Extracting ImageMagick ---> Configuring ImageMagick ---> Building ImageMagick ---> Staging ImageMagick into destroot ---> Installing ImageMagick @6.9.11-60_1+x11 ---> Activating ImageMagick @6.9.11-60_1+x11 ---> Cleaning ImageMagick ---> Updating database of binaries ---> Scanning binaries for linking errors ---> No broken files found. ---> No broken ports found. ~ took 8m49s convert 修改gif循环次数,当loop为0时则关闭了gif的循环播放。 ...

November 18, 2021 · datewu

bash简介

本文会不定期更新 :) set 可以使用set命令改变shell脚本默认的执行流程。 比如 set -e 可以使得shell脚本遇到某一条命令出错( echo $? 不为0)时立即退出执行。 1 2 3 4 #/bin/bash set -e false echo you cannot see me, unless you comment out the 'set -e' flag, haha set详细文档 du 1 2 ❯ du -sh Downloads 4.1G Downloads wiki rm 1 rm $0 # 删除当前文件 for cleanup job nohup 在后台执行当前命令: 1 nohup /usr/sbin/script.sh & 默认情况下,进程是前台进程,这时就把Shell给占据了,我们无法进行其他操作,对于那些没有交互的进程, 我们希望将其在后台启动,可以在启动参数的时候加一个’&‘实现这个目的。 1 2 3 4 5 ❯ sleep 5 & [1] 34769 ✦ ❯ [1] + 34769 done sleep 5 ✦ ❯ 进程切换到后台的时候,我们把它称为job。切换到后台时会输出相关job信息,上面&的输出 [1] 34769 : [1]表示job ID 是1,11319表示进程ID是34769。切换到后台的进程,仍然可以用ps命令查看。 ...

November 17, 2021 · datewu

查找文件

TLDR; find: 有很多过滤规则查找文件/目录/设备,而且可以递归查询某一个目录下的目录或文件,最后除了打印查询结果以外,还可以做其它操作(比如删除该文件); locate: 则简单很多,根据关键字 在缓存index中 检索出含有该关键字的文件或者目录; fzf: 实时模糊查询,可以集成到常用的IDE中(比如fzf.vim)。 demo find The syntax of the Find command is: find [-H] [-L] [-P] [-D debugopts] [-Olevel] [starting-point...] [expression] 1 2 3 4 5 6 7 8 #!/bin/bash find . -name "*tar*gz" -delete find . -name "*tar*xz" -delete find . -name "*tar.xz" du -sh . find . -name "*zip*" -delete find . -type f | perl -lne 'print if -B' | xargs rm -f # delete all binary files under . recursivly locate The syntax of the Locate command is: ...

September 16, 2017 · datewu