2014-10-27 2 views
1

Следующий код в Python 2.7, не работает:Python OS ошибка модуля

import os 

def dockSuck(): 
    os.system("echo Switching to suck effect.") 
    os.system("defaults write com.apple.dock mineffect suck") 
    os.system("killall dock") 

dockSuck() 

Он печатает Switching to suck effect. и No matching processes belonging to you were found. Это должно переключить эффект минимизации (на Mac) на скрытый эффект suck (затем сбросить док-станцию ​​на killall), но вместо этого он возвращает ошибку.

+0

Просто, чтобы быть уверенным, вы можете вручную ввести эти команды, и они работают, как ожидалось? – wnnmaw

ответ

4

Док-процесс на osx называется Dock - обратите внимание на верхний регистр.

$ ps -ef |grep dock -i 
    501 359  1 0 17Oct14 ??   0:57.16 /System/Library/CoreServices/Dock.app/Contents/MacOS/Dock 
    501 423  1 0 17Oct14 ??   0:03.09 /System/Library/CoreServices/Dock.app/Contents/XPCServices/com.apple.dock.extra.xpc/Contents/MacOS/com.apple.dock.extra 
    501 2259 359 0 17Oct14 ??   0:37.98 /System/Library/CoreServices/Dock.app/Contents/Resources/DashboardClient.app/Contents/MacOS/DashboardClient 

Изменить ваше заявление killall как os.system("killall Dock")

+1

и, в качестве дополнительной заметки, вы можете отправить «killall -kill Dock» только для того, чтобы все процессы были убиты. – MattDMo

+0

Я попробую. :) –

+0

А, да, это сработало. Я сделаю это через пару минут. =) Спасибо за помощь! –

Смежные вопросы