\r\n\r\n

アップルスクリプトでbashスクリプトをクリックできるアプリケーションに変換する方法

bashスクリプトは強力ですが、必ずしも便利ではありません。ここでは、bashコマンドをクリックできるアプリケーションに変換するapplescriptの方法を紹介します...

例えば、あなたがbashスクリプトのウィザードで、技術に詳しくない友人や家族のためにタスクを自動化するのが好きだとしましょう。たとえ問題を完全に解決するスクリプトを渡したとしても、自分で端末を使うことに不安を感じるかもしれません。この場合、それらのアクションをすべて手動で実行することができます。

幸いなことに、AppleScriptはユーザーフレンドリーな言語であり、スクリプトを共有可能でGUIに適したコンテンツに変換することが簡単にできます。

applescript入門

AppleScriptはMacOS 7に遡る古いプログラミング言語で、1980年代にユーザー標準に沿った読みやすい言語として設計され、Finderと連携してワークフローを自動化することを主目的とした。

bashスクリプトのような複雑なワークフローの実行や環境設定ファイルの修正に使用でき、ボタンをクリックするだけで簡素化することができます。また、ファイルとして入力し、ドラッグ&ドロップすることも可能です。

注:AppleScriptの構文に関するガイドから始め、ドアへの作業フローを説明します。

UtilitiesフォルダーにあるScript Editorツールは、実用的なAppleScriptを書くためのAppleScriptテキストエディターでありIDEです。アップルスクリプト言語ガイドを読み込むときに使用します。

また、「ウィンドウ」> 「ライブラリ」で、可能な限りのアップルスクリプトコマンドのリストを見ることができます。

applescriptを使ってbashスクリプトをクリックできるようにする

Bashは、あなたのMacを外科的に、超特殊な方法で操作するのに役立ちます。あなたのマシンでやりたいことはほとんど何でも書くことができます。

通常、bashスクリプトを実行する場合、実行可能なパーミッションを確保する必要があります。その後、Terminalを開き、スクリプトのパスに移動し、Returnをクリックして実行する必要があります。しかし、AppleScriptを使えば、ダブルクリックで素早くbashスクリプトを実行することができます。

シェルスクリプトを実行する」コマンド

AppleScriptにbashスクリプトを追加するのは、簡単な作業です。まず、Applications> Utilities> Script Editorで、新しいアップルスクリプトを開いてください。空白のエディタウィンドウが表示されます。

お気に入りのmacOSのテキストエディタでbashスクリプトを準備するか、スクリプトエディタで適切に実行します。準備ができたら

do shell script

以下のコマンドで送信することができます。

do shell script "Command"

以下のように、セミコロン(;)を追加して複数のコマンドを送信することができます。

do shell script "Command1; Command 2"

既存のbashスクリプトを他の場所から参照するには、単に次のようにします。

do shell script "/path/to/your/script.sh"

管理者権限を必要とするコマンドを実行するには、まずAppleScriptで次のように設定します。

do shell script "command" user name "USER" password "PASSWORD" with administrator privileges

再生ボタンをクリックすると、アップルスクリプトが実行され、構文エラーがないかどうかが確認されます。最後に、アップルスクリプトを保存します。「ファイル形式」で「アプリケーション」を選択します。これでダブルクリックで実行できるようになります。

bashでリバース

ところで、逆にbashスクリプトにAppleScriptのコマンドを追加したい場合はどうすればいいのでしょうか?まあ、そんなこともできるんですね。

bashスクリプトの中に

osascript

コマンドの後にアップルスクリプトを実行することで、ユーザー入力や警告バナーなどの面白い要素を追加することができます。

アップルスクリプトの使用

例えば、ブログの準備のためにサイズを変更する必要がある画像がたくさんある場合、またはすべてのファイルを種類別に分類したい場合を考えてみましょう。これらの操作を行うためのスクリプトを書くこともできますが、従来のbashスクリプトでは、操作したい各ファイルのフルパスをそれぞれの操作で書く必要がありました。これは、大量のファイルを扱うときに面倒になることがあります。

幸いなことに、アップルスクリプトを設定すれば、対象ファイルをドラッグするだけで入力として実行することができます。このような特殊なアプリケーションをドロプレットと呼びます。ここでは、その作成方法をご紹介します。

  1. スクリプトエディターで、新しいアップルスクリプトを開きます。
  2. 開いているファイルのハンドラでAppleScriptを起動します。ドロップしたファイルは何度でも呼び出すことができます。
  3. do シェルスクリプトまたは通常の AppleScript 構文を使用して、残りのスクリプトを完成させてください。スクリプトを閉じるときに、end open がハンドラを閉じることを確認してください。
  4. 上記のように、アップルスクリプトをアプリケーションとして保存します。

スクリプト上に直接ファイルをドラッグ&ドロップできるようになりました。

アップルスクリプトスクリプト例

次の例は、この2つの便利な機能を示しています。

ドラッグ&ドロップしたファイルのアクセス権を変更することができます。

例えば、ファイル、スクリプト、ドキュメントを友人に渡すとき、彼らがそれをいじらないようにしたいとします。このスクリプトを使用すると、任意のファイルへの書き込みアクセスを簡単に削除して、読み取り専用にすることができます。

ドロップにファイルを置くと、そのパス名はHFS形式(Hierarchical File System)でAppleScriptに読み込まれることを覚えておいてください。この場合、コロンが使われ、スペースをエスケープしないので、デスクトップ上のファイルは次のようになります。

Macintosh HD:Users:jdoe:Desktop:myfile

BashはPOSIXという別のパス規格を使っているので、Bashの中で同じファイルでも

Macintosh\ HD/Users/jdoe/Desktop/myfile

以下のスクリプトは、ファイル名を適切なパス基準に変換してからパーミッションを変更します。

on open dropped_file set bash_path_file to the POSIX path of dropped_file do shell script "chmod -R -w " & quoted form of bash_path_fileend open

automatorでより高いmacの自動化を実現

さて、自動化のかゆいところに手が届くようになったところで、MacのAutomatorに飛び込んでみましょう。 AutomatorはAppleScriptと似ているところがたくさんあります。スクリプトや自動化を始めたばかりであれば、Automatorはよりシンプルな入り口だと感じるかもしれません。 読みやすいプログラミング言語を使う代わりに、Automatorでは直感的なドラッグ&ドロップバブルと習得しやすいインターフェイスを使って、日々のタスクを簡素化します。

  • 2021-03-21 09:39 に公開
  • 閲覧 ( 17 )
  • 分類:IT

あなたが興味を持っているかもしれない記事

匿名者
匿名者

0 件の投稿

作家リスト

  1. admin 0 投稿
  2. 匿名者 0 投稿

おすすめ