Сценарій Bash для / etc / crontab


1

Я хочу запускатись після кожного перезавантаження, без входу користувача

kextunload /System/Library/Extensions/AppleHDA.kext

Я спробував зробити тут скрипт bash:

#!/bin/sh
PATH=/usr/local/bin:/usr/local/sbin:~/bin:/usr/bin:/bin:/usr/sbin:/sbin

kextunload /System/Library/Extensions/AppleHDA.kext
echo "Internal Speaker disabled"

однак, намагаючись bash скрипт у терміналі, дайте мені цей результат "команда не знайдена"

Що я роблю неправильно, якщо не все.

PS: коли буде вирішено, я просто залишаю свій скрипт у "/ etc / crontab" (щоб його можна було запускати кожен раз під час завантаження) чи мені все-таки робити env EDITOR = nano crontab -e і додавати завдання

Відповіді:


4

Помилка сценарію, оскільки ви розділили команду на два рядки. В основному ви хочете видалити нові рядки між лініями PATH та kextunload, так що це виглядає приблизно так:

#!/bin/sh
PATH=/usr/local/bin:/usr/local/sbin:~/bin:/usr/bin:/bin:/usr/sbin:/sbin kextunload /System/Library/Extensions/AppleHDA.kext
echo "Internal Speaker disabled"

Але ви також можете просто спростити все це до одного рядка, який ви можете поставити в crontab:

/sbin/kextunload /System/Library/Extensions/AppleHDA.kext

Коли ви додасте cronjob, crontab -eтоді додайте його так, щоб запустити його під час кожного завантаження:

@reboot /sbin/kextunload /System/Library/Extensions/AppleHDA.kext
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.