在Automator中,如何在“运行Shell脚本”操作后获取文件夹内容


0

我有一个Automator应用程序,我想将一个文件夹拖到它上面并让它创建该文件夹的副本(兄弟),重命名的副本文件。例如,从以下开始:

root
 +--svgs
     |--icons_a.svg
     +--icons_b.svg

svgs目录拖到应用程序上时,我想最终得到以下结果:

root
 |--svgs
 |   |--icons_a.svg
 |   +--icons_b.svg
 +--renamed-svgs
     |--a.svg
     +--b.svg

我尝试过以下方法: 在此输入图像描述

但它引发了以下情况:

在此输入图像描述

不确定如何调试错误,但是如何获得第一个“运行Shell脚本”操作以返回“renamed-svgs”文件夹或该文件夹的内容?

或者有更好的方法来做这整件事吗?

Answers:


1

通常建议将变量括在双引号中。

使用该echo命令返回“ renamed-svgs ”文件夹

rm -rf "$@"/../renamed-svgs
cp -rf "$@"/ "$@"/../renamed-svgs
echo "$@"/../renamed-svgs/

或使用该find命令返回名称以icons_开头的文件

rm -rf "$@"/../renamed-svgs
cp -rf "$@"/ "$@"/../renamed-svgs
find "$@/../renamed-svgs/" -type f -maxdepth 1 -iname 'icons_*' -print

0

如果与bash脚本进行通信的应用程序在与其进行交互时不是正在运行的应用程序,那么这个错误正是如此。至于执行任务的更好方法,不,自动机很棒。

  • 我知道,不是一个完整的答案,但我无法评论,我的陈述是真的。
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.