“如果文件夹不为空”

时间:2012-03-22 12:25:02

标签: applescript

我正在制作一个简单的Applescript来检查垃圾是否有物品,如果是,请要清空它。不过,我在查看垃圾是否为空时遇到问题。这就是我所拥有的:

set trashcontents to text returned of (do shell script "ls ~/.Trash")

当“无标题文件夹”在垃圾箱中时会返回error "Can’t get text returned of \"untitled folder\"." number -1728 from text returned of "untitled folder",而当它为空时会返回error "Can’t get text returned of \"\"." number -1728 from text returned of ""。我做错了什么?

2 个答案:

答案 0 :(得分:2)

试试这个:

set trashcontents to quoted form of (do shell script "ls ~/.Trash")

答案 1 :(得分:2)

实际上它更简单:

do shell script "ls ~/.Trash"
set trashcontents to result
当“废纸篓”为空时,

result将等于""(空字符串)。

但是,除非您想根据它是否包含特定项目来清空垃圾箱(在您的问题中,它听起来像“如果它不是空的,将其清空”),则无需检查它是否为空......如果没有任何内容,Finder命令清空垃圾箱将无效:

tell application "Finder" to empty the trash