«Если папка не пуста» - PullRequest
       10

«Если папка не пуста»

1 голос
/ 22 марта 2012

Я делаю простой 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 ]

2 голосов
/ 22 марта 2012

Это даже проще на самом деле:

do shell script "ls ~/.Trash"
set trashcontents to result

result будет равно "" (пустая строка), когда корзина пуста.

Но если вы не хотите очистить корзину в зависимости от того, содержит ли она определенные элементы (в вашем вопросе это звучит как «если она не пустая, опустошите ее»), нет необходимости проверять, пуста ли она Команда Finder для очистки корзины в любом случае не будет действовать, если в ней ничего нет:

tell application "Finder" to empty the trash
2 голосов
/ 22 марта 2012

Попробуйте это:

set trashcontents to quoted form of (do shell script "ls ~/.Trash")
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...