メインコンテンツまでスキップ

はじめに

ptool は Lua スクリプトを実行し、実用的な自動化のための標準 ライブラリを注入します。

現在の主なエントリーポイントは次のとおりです。

ptool run <file>

.lua ファイルでは、短縮形も使えます。

ptool <file.lua>

対話的に試したい場合、ptool には次のコマンドもあります。

ptool repl

スクリプトの実行時、ptool はグローバルテーブル ptool と短い別名 p を通じて API を公開します。

インストール

Linux と macOS では、リリース用インストーラーで ptool を インストールできます。

curl -fsSL https://peterlits.net/ptool/install.sh | bash

このインストーラーは現在のプラットフォーム向けの最新ビルド済み リリースをダウンロードし、ptool~/.local/bin/ptool に インストールし、必要に応じて PATH のヒントを表示します。

最新の安定版ではなく特定のリリースタグをインストールするには:

curl -fsSL https://peterlits.net/ptool/install.sh | bash -s -- v0.2.0

~/.local/bin ではなく独自のバイナリディレクトリにインストールする には:

curl -fsSL https://peterlits.net/ptool/install.sh | bash -s -- --bin-dir "$HOME/.cargo/bin"

最小スクリプト

ptool.use("v0.1.0")

ptool.run("echo", {"hello", "world"})

ptool.use(...) は、そのスクリプトが必要とする最小の ptool バージョンを宣言します。これにより期待する API バージョンを明示でき、 古いランタイムでは早い段階で失敗します。詳しくは コア Lua API を参照してください。

実行方法:

ptool run script.lua
ptool script.lua

引数の受け渡し

スクリプトのパスの後ろに追加の CLI 引数を渡せます。

ptool run script.lua --name alice -v a.txt b.txt
ptool script.lua --name alice -v a.txt b.txt

これらはスクリプト内で ptool.args.parse(...) を使って解析できます。

Shebang スクリプト

ptool は shebang ファイルをサポートしています。.lua 向けの短縮形を 使うと、スクリプトは次のように始められます。

#!/usr/bin/env ptool

これにより、実行権限ビットを付けたあとでスクリプトを直接実行できます。

利用できるもの

  • shebang ファイルを理解するスクリプトランナー。
  • Lua 式や ptool API をその場で試せる対話型 REPL。
  • semver、パス、ファイル、TOML、正規表現、文字列、HTTP、SSH、 データベース、テンプレートの Lua ヘルパー。
  • コマンド実行、引数解析、対話入力のための CLI 向けヘルパー。

次のステップ

  • REPL を開いて、対話的な使い方、複数行入力、キーボードの 挙動を確認する。
  • Lua API 概要 を使って、コア API と利用可能な モジュールを確認する。
  • コア Lua API から始めて、バージョン制御、 プロセス実行、設定、スクリプトのライフサイクルヘルパーを理解する。
  • 特定の機能セットの詳細なリファレンスが必要な場合は、 引数 API のようなモジュールページを開く。