こんにちはゲストさん。会員登録(無料)して質問・回答してみよう!

解決済みの質問

MAC ログイン時にSUで実行

Macbook pro 15" Retina (ME665J/A)にでUSB3.0のGigabit LANアダプタ(玄人志向 GbE-USB3.0)がスリープから復帰すると認識しない(ネットに接続できない。アダプタのLEDが点滅しない)問題で悩んでいます。
購入当初(3月)はスリープからの復帰で問題なく利用できていたのですが、昨日からスリープから復帰すると認識しません。本体を再起動すると認識します。
LANアダプタのLEDを見ていると、スリープ状態からログインでのパスワード入力を入れるまではLEDが点滅しますが、パスワードを入れるとLEDが消えて、デスクトップ画面ではネットに接続できません。

ネットで調べていると、認識しない場合、ターミナルからSUで下記を実行すると復帰すとのことで、試したところ、認識するようになりました。
sudo kextunload -b com.asix.driver.ax88179_178a
sudo kextload -b com.asix.driver.ax88179_178a

ただし、上記はスリープからの復帰後、ログインする度に実行する必要が有ります。

そこで、上記のコマンドをスリープから復帰したら自動で実行したいのですが、どうすれば良いのでしょうか。

自動での実行がダメな場合、バッチファイルとして、クリックしただけで(SUでのパスワードも入力しないで)実行できるようにしたいのですが、やり方を教えていただけないでしょうか。

投稿日時 - 2013-04-21 10:37:28

QNo.8052774

困ってます

質問者が選んだベストアンサー

AppleScriptでできます。「パスワード」の所を自分のパスワードに書き換えてご利用下さい。

なお、パスワードを事前に入れておけるんですが、セキュリティ上よろしくありません。念のため(汗
実行形式で保存すればスクリプトを覗けないものの
バイナリエディタとかで見るとパスワードの文字列が見えるかも知れないので。


・パスワード等を入れずに簡単起動

以下の三行をAppleScriptエディタにコピペして、アプリケーション形式・実行形式でデスクトップにでも保存。

property YourPassWord : パスワード
do shell script "sudo kextunload -b com.asix.driver.ax88179_178a" password YourPassWord with administrator privileges
do shell script "sudo kextload -b com.asix.driver.ax88179_178a" password YourPassWord with administrator privileges

これをダブルクリックすればできます。



・スリープから復帰した時に自動起動

http://detail.chiebukuro.yahoo.co.jp/qa/question_detail/q1474794089
の情報と組み合わせると出来ると思います。

以下のスクリプトをAppleScriptエディタにコピペして、アプリケーション形式・実行形式、「実行後、自動的に終了しない」にチェックをして保存。
できたアプリをログイン項目に設定すれば、Macが起動した際に自動で起動します。
スリープから復帰した際に自動で処理してくれると思います。


(*
スリープから復帰したことを検知してイベントを起こすスクリプト
ソース:http://detail.chiebukuro.yahoo.co.jp/qa/question_detail/q1474794089
スリープ検知後の処理を変更した。
「実行後、自動的に終了しない」にチェックを入れて保存
*)

property PreviousTime : 0
property Interval : 10
property IntervalMargin : 3
property YourPassWord : パスワード

set PreviousTime to 0
on idle
set NewTime to current date
if PreviousTime is not 0 then
if (NewTime - PreviousTime) > (Interval + IntervalMargin) then
activate


--スリープ復帰後に実行させたい事
do shell script "sudo kextunload -b com.asix.driver.ax88179_178a" password YourPassWord with administrator privileges
do shell script "sudo kextload -b com.asix.driver.ax88179_178a" password YourPassWord with administrator privileges

set NewTime to current date
end if
end if
set PreviousTime to NewTime
return Interval
end idle

投稿日時 - 2013-04-21 23:42:19

ANo.1

このQ&Aは役に立ちましたか?

0人が「このQ&Aが役に立った」と投票しています

回答(1)