回答:
不可能です。Launch ServicesはアプリケーションIDで機能し、bashスクリプトにはそれらがありません。
Automatorを使用してラッパーアプリケーションを作成する必要があります。
これがGrowlコマンドラインユーティリティを使用した私のバージョンです。
結果:
すべて~/Library/Preferences/com.apple.LaunchServices.plist
を変更すると、この変更が及ぼす影響を確認できます。
(「テスト」は、Automatorアプリケーションに付けた名前です)
ダニエルベックの指示にいくつかの変更を加えて、MacのChrome(Firefoxでも動作します)で開きたいURLファイルでこれを機能させました。
私が使用したスクリプトは次のとおりです。
sed 's/^URL=/URL=/' "$1" | grep -m 1 '^URL=' | sed 's/^URL=//' | tr -d '\r' | xargs open -a "Google Chrome"
これは、次のような典型的なURLファイルからURL =行を解析します。
[InternetShortcut]
URL=http://www.docircuits.com/pricing
IDList=
HotKey=0
IconFile=O:\Apps\Firefox\Data\profile\shortcutCache\4t0JW4mY1qRPhiYz1fY3dw==.ico
IconIndex=0
Automatorスクリプトを〜/ Libraryディレクトリのような場所に保存します。私はOpenUrl.appを呼び出しました。
次に、どこかにあるurlファイルに移動して、「情報を見る」ポップアップを開きます。Open WithコマンドをOpenUrl.appスクリプトに変更します。1つだけでテストするか、[すべて変更...]をクリックします。最初にクリックしたときにエラーが発生しましたが、2回目には機能しているようです。
これを開発すると、「シェルスクリプトの実行」エラーが発生しましたが、それはスクリプトの実際のエラーが原因でした。Danielのスクリプトの主な問題は、開こうとしたファイル名のスペースを処理しないことです。
リポジトリreattach-to-user-namespace
から、またはとともに使用しbrew install reattach-to-user-namespace
ます。これはシエラで動作しますが、他のOSについてはわかりません。
インストールしたら、次のようにbashスクリプトで使用します。
ユーザーの名前空間に再接続するa_cool_file.pngを開く