首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >Apple Automator获取屏幕捕获并保存到用户指定的位置。

Apple Automator获取屏幕捕获并保存到用户指定的位置。
EN

Stack Overflow用户
提问于 2015-02-11 02:50:03
回答 2查看 3.9K关注 0票数 0

因此,我试图使用下的Automator创建一个服务,允许用户通过某种形式的“另存为”对话框获取屏幕快照并将其保存到他们指定的位置。这似乎很容易,但出于某种原因,我在这方面遇到了困难。截图组件很简单,在Automator中使用“采取屏幕截图”操作,但是将其保存到一个自定义位置会给我带来麻烦。

在尝试了几种不同的方法之后,似乎最简单的方法是将屏幕截图保存到“采取屏幕快照”操作中的固定目录/文件名,然后(使用AppleScript)在该目录中重命名它,并将其移到用户指定的目标目录中。因此,我向我的服务添加了一个“”操作。在它中,我使用choose file name命令在AppleScript中生成选择文件名/路径的对话框。我正在尝试将文件名从路径中分割开来,这样我就可以将我保存的文件重命名为“TakeScreen快照”,然后将它移到我想要保存的路径上。我可以得到完整的路径,但是仅仅从路径获取文件名就有问题了--我已经尝试过从网上看到的各种建议。在我的屏幕截图中,显示的错误来自于尝试执行

我对这个流程一点也不确定,所以如果有人对如何做我想做的事情有更好的建议,请告诉我。否则,如果有人能够告诉我如何从路径中提取文件名(如果有某种特殊的方式,您必须使用该字符串来重命名文件),那就太好了!

截图中的AppleScript代码:

代码语言:javascript
运行
复制
on run {parameters}
    set thePath to (choose file name with prompt "Where would you like to save your file?")
    tell application "Finder"
        display dialog thePath as string
    end tell
    set UnixPath to POSIX path of (thePath as text)
    display dialog UnixPath
end run

我试过了,但没有用:

set basePath to POSIX path of (parent of (thePath) as string)

谢谢你查查!

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2015-02-11 16:44:32

一个简单的方法是使用命令行工具"screencapture“。它有很多你可以选择的选择。看它的手册页。这里有一个示例,您可以直接作为applescript运行,或者如果需要,可以将其放入applescript automator操作中。

祝好运。

代码语言:javascript
运行
复制
set thePath to (choose file name with prompt "Where would you like to save your file?")
do shell script "screencapture -mx -T1 " & quoted form of (POSIX path of thePath & ".png")
票数 1
EN

Stack Overflow用户

发布于 2015-10-16 07:13:50

我在Automator中创建了一个文件夹操作。选择桌面。添加Finder对象(搜索:桌面)。添加Move对象并选择您的首选目的地。这将自动移动所有的屏幕截图。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/28445749

复制
相关文章

相似问题

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