MacOS版Google ChromeをIPv4専用として起動する方法
拙宅のインターネット環境はJ:COM札幌の回線を利用しており、現状ではIPv6に対応していない模様。でもMacOS版のGoogle ChromeはIPv6を優先するようで、閲覧できないWebページが生じます。
コマンドラインオプション「--disable-ipv6」を付けて起動すればIPv4専用として動作するので、閲覧できないページはなくなりますが、毎回、ターミナルから起動するのは不便。そこで下記のAppleScriptを書いて、アプリケーションとして保存してみました。
上記のアプリケーションのアイコンをダブルクリックするなどして起動すれば、オプション付きのChrome本体が起動する…のですが、起動だけ担当して欲しい上記アプリケーションがずーっと動作を続けて、Chromeを終えるまで存在し続けます。
コマンドの末尾に「&」を付ければバックグラウンド実行の指定になり、完了を待つこと無く次の処理(quit me)に進むはず…と考えていたのですが、誤解と判明しました。標準出力や標準エラー出力を切り離さないと、AppleScript側で終了待ちになってしまうのですね。そこを修正したのが下記。
「>/dev/null」で標準出力をnullデバイスに向けて、「2>&1」で標準エラー出力も同じデバイスへ。その上でコマンドの末尾に「&」を付ければ、Chromeを起動してすぐに自分自身を終了させるので、不要なアイコンがDockに残ることがなくなりました。
Linuxでバックグラウンド起動は多用していますが、親プロセスが出力を監視する辺りのことを気にしたことがないなぁ…と思い、不勉強を反省中。半端に知った気になっているのがよろしくないですなぁ…。
コメント
You can follow this conversation by subscribing to the comment feed for this post.