Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/macos/8.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Macos 获取Mac服务中的文件夹路径/内容_Macos_Bash_Automator - Fatal编程技术网

Macos 获取Mac服务中的文件夹路径/内容

Macos 获取Mac服务中的文件夹路径/内容,macos,bash,automator,Macos,Bash,Automator,我有一个很好的文件夹操作,它对文件夹中的每一张图片进行水印处理,并将它们放在一个文件夹中 watermark=~/Dropbox/Business/mihalko_logo_bw.png shopt -s nocasematch for f; do [[ $f =~ .*\.(jpe?g|png)$ ]] || continue d="${f%/*}/wm_$(date +%Y_%m_%d)" mkdir -p "$d" target="$d/${f##*/}" size=$

我有一个很好的文件夹操作,它对文件夹中的每一张图片进行水印处理,并将它们放在一个文件夹中

watermark=~/Dropbox/Business/mihalko_logo_bw.png
shopt -s nocasematch
for f; do
  [[ $f =~ .*\.(jpe?g|png)$ ]] || continue
  d="${f%/*}/wm_$(date +%Y_%m_%d)"
  mkdir -p "$d"
  target="$d/${f##*/}"
  size=$(/usr/local/bin/identify -format '%[fx:w/4,279]' "$f")
  /usr/local/bin/composite -dissolve 10% -gravity SouthEast\
  \( $watermark -geometry $size \) "$f" -quality 100 "$target"
  rm $f
done
~/imageoptim-cli/bin/imageOptim --jpeg-mini --image-alpha --quit --directory "$d"

不幸的是,FA只在一个目录中工作。我试图用这段代码创建一个服务,但没有成功。有人知道这种情况下需要进行哪些修改/自动操作吗?

使用关联数组:

watermark=~/Dropbox/Business/mihalko_logo_bw.png
shopt -s nocasematch

declare -A dirs

for f; do
  [[ $f =~ .*\.(jpe?g|png)$ ]] || continue
  d="${f%/*}/wm_$(date +%Y_%m_%d)"
  mkdir -p "$d"
  dirs["$d"]="$d"
  target="$d/${f##*/}"
  size=$(/usr/local/bin/identify -format '%[fx:w/4,279]' "$f")
  /usr/local/bin/composite -dissolve 10% -gravity SouthEast\
  \( "$watermark" -geometry $size \) "$f" -quality 100 "$target"
  rm "$f"
done

for d in "${dirs[@]}"; do
  ~/imageoptim-cli/bin/imageOptim --jpeg-mini --image-alpha --quit --directory "$d"
done
不幸的是,FA只在一个目录中工作。我试图用这段代码创建一个服务,但没有成功。有人知道在这种情况下需要什么修改/自动操作吗

如果设置了文件夹操作,则应能够通过将文件夹操作附加到其他文件夹

进入搜寻器 右键单击要将文件夹操作附加到的文件夹。 从上下文菜单“文件夹操作设置”中选择第一项: 选择此菜单项将弹出一个窗口,您可以在其中将文件夹操作附加到其他文件夹。 如果需要使用Automator创建服务,可以执行以下操作:

运行Automator应用程序 创建新服务 将名为:runshell脚本的操作添加到wokflow。 将代码复制并粘贴到shell脚本操作中。 选择服务可以使用的输入类型和应用程序。 我希望这对你有帮助

您可以通过以下地址向我发送电子邮件:kaydell@yahoo.com如果我能提供进一步的帮助