FileMaker Server 上でFMDeveloperToolを動かす方法【シェルスクリプト実行】
こんにちは、よしです。
今回は FileMaker Server (ファイルメーカーサーバー)上で FMDeveloperTool を動かす方法 をご紹介します。
「Developerユーティリティ、毎回手動で開くのが正直ちょっと面倒…」
そんなふうに感じたこと、ありませんか?
実は FileMaker Serverではシェルスクリプトを実行できる ので、
FMDeveloperToolも自動化できます。慣れるとかなり便利です。
少しでも参考になればうれしいです。
目次
1. イントロダクション
FileMaker Serverでは、
シェルスクリプト(bash / Perl / Python など)や各種スクリプトを実行できる のをご存知でしょうか。
正直、最初は私も「そんなことできるんだ…」という感じでした。
FileMaker Pro だけでは難しい処理も、
Server+システムスクリプトを使うことで一気に幅が広がります。
シェルスクリプトでできること

シェルスクリプトは、例えばこんな処理をまとめて実行できます。
- ファイルのコピー・移動
- ログの出力・抽出
- 定期処理の自動化
いわば 「いつもの作業をコマンド化する仕組み」 ですね。
WindowsではバッチやVBScript、
macOS・Linuxでは bash / Perl / Python などが利用できます。
今回はその仕組みを使って、
FMDeveloperToolをFileMaker Server 上で実行するデモ を行います。
FMDeveloperToolとは?

FMDeveloperTool(FileMaker Developer Tool) は、Claris FileMaker のデータベース開発・展開作業をコマンドライン(CUI)で操作できる公式ツール です。
これまで
「FileMaker Proを開いて → Developerユーティリティを選んで → ポチポチ操作」
していた作業を、コマンド一発で実行できます。
できることは例えば以下のとおりです。
- コピー・クローン作成
- XML(DDR)の出力
- 一貫性チェック
- 暗号化・復号化
- 管理者アクセスの削除
- 修復処理 など
スクリプトと組み合わせることで、
ミスのない自動展開 ができるのが大きなメリットです。
引用: https://support.claris.com/s/answerview?anum=000040031&language=ja
2. DEMO(実行イメージ)
今回は 「XMLファイルとして保存(DDR出力)」 を
シェルスクリプトから実行してみます。
FileMaker ServerのAdmin Consoleで作成したスケジュールを、
赤枠の 「今すぐ実行」ボタン から実行します。
※ 注意点として、
対象のFileMakerファイルは必ず閉じてから実行 してください。
稼働中のファイルには使えません。
実行結果の確認
今回は出力先を /tmp にしています。
cd /tmp find *xml
問題なければ、XMLファイルが生成されているはずです。

無事に出力されたときは、ちょっと安心します。
XML(DDR)を出力するメリット
「XMLファイルとして保存」で作成されるXMLは、
FileMakerの スキーマ構造をそのまま表現したデータ です。
- 改修前
- 改修後
この2つを比較することで、
どこが変わったのかを正確に確認 できます。
地味ですが、リリース前にはかなり重宝します。
引用: https://help.claris.com/ja/pro-help/content/save-a-copy-as-xml.html
3. シェルスクリプトのコード例
XMLを出力するサンプルのシェルスクリプトです。
今回はAIを使って作成しました。
#!/bin/bash set -e # --- 引数チェック --- if [ $# -lt 3 ]; then echo "使い方: $0 <SRC_PATH> <SRC_ACCOUNT> <SRC_PWD>" echo "例: $0 './test.fmp12' admin admin" exit 1 fi # --- 引数 --- SRC_PATH="$1" SRC_ACCOUNT="$2" SRC_PWD="$3" # ツールパス TOOL_PATH="/opt/FileMaker/FileMaker Server/Database Server/bin/FMDeveloperTool" # 出力先(tmpフォルダに固定) OUT_XML="/tmp/$(basename "$SRC_PATH").xml" # --- 実行 --- "$TOOL_PATH" \ --saveAsXML "$SRC_PATH" "$SRC_ACCOUNT" "$SRC_PWD" \ -t "$OUT_XML" echo "XML(DDR)が生成されました → $OUT_XML" exit 0
シンプルですが、
「自動化する」には十分な内容です。
4. シェルスクリプトの設定方法
シェルスクリプトの設定は、
公式ヘルプ「システムスクリプトファイルの実行」に沿って行います。
① スクリプトの配置場所
以下のディレクトリに配置してください。
- Windows
C:\Program Files\FileMaker\FileMaker Server\Data\Scripts\ - macOS
/ライブラリ/FileMaker Server/Data/Scripts/ - Linux
/opt/FileMaker/FileMaker Server/Data/Scripts/
② 権限設定(Linux例)
FileMaker Serverが実行できるようにします。
権限グループの追加
sudo chown fmserver:fmsadmin ファイル名
※ FileMaker Serverはデフォルトで「fmsadmin」として動作します。
権限の設定
sudo chmod 750 ファイル名
③ Admin Consoleでの設定
構成 → スケジュール → スケジュールの作成
以下を設定します。

- スケジュールタイプ:システムスクリプト
- スケジュール名:任意
- システムスクリプト:配置したスクリプト
- 引数:
"/opt/FileMaker/FileMaker Server/Data/Databases/XXXXX.fmp12" "アカウント名" "パスワード"
※アカウント、パスワードは.fmp12に設定した完全アクセス権です。

5. 環境情報
- FileMaker Server:21.1.5.500
- バックエンド:Ubuntu 22.04
- フロントエンド:M1 Mac / Tahoe 26.0.1
6. まとめ
FileMaker(ファイルメーカー)ServerとFMDeveloperToolを組み合わせることで、
できることの幅は一気に広がります。
最初は少しハードルが高く感じるかもしれませんが、
一度仕組みを作ってしまえば、あとはかなり楽です。
ぜひ試してみてください。
次回は、
FMDeveloperToolを使ってFileMaker Serverへアップロードする方法
にも挑戦してみようと思います。
🔗参考資料
🎥Claris公式 ヘルプ
LClaris FileMaker Developer Tool
L名前を付けて XML として保存
✏️関連記事のご紹介
●システムスクリプトの基本的な設定手順についてはコチラ!
Lサーバー上の別のセッションでスクリプトを実行
●AI関連記事
LFIleMaker(ファイルメーカー)とChatGPT連携!
●サーバーパフォーマンス監視について
LClaris FileMaker Server 19.3.1 〜帰ってきたログビューア
●APIを利用したデータ連携
LFileMaker開発者が知っておくべき「OData」活用法:Data APIとの違い(基本編)
🌐 サポータス公式サイト(ソリューション紹介)
L SNS( Twitter | Facebook)
L FileMaker 導入事例まとめ