Repolode
oils-for-unix

oils-for-unix/oils

Oilsはbash互換シェルのOSHと、PythonやJavaScript風の新しいシェル言語YSHを備え、Pythonで記述してC++に変換されます。

スター
3,400
フォーク
194
未解決の Issue
610
最終コミット
4 日前

これは何?

Oilsはbashからの移行先となるシェルです。既存のシェルスクリプトを実行できるOSHと、従来のシェル構文を避けたいPythonやJavaScriptユーザー向けの新しいシェル言語YSHを備えています。

コードベースは短く、変更しやすいPythonで記述されています。独自の変換ツールでC++に変換することで、実行時にPythonへ依存しない、小さく高速な実行ファイルを生成します。

このリポジトリはコントリビューター向けです。READMEにはPython上で直接動作する開発ビルドの作成方法が記載されており、開発に関する議論の場としてwikiとZulipチャンネルも案内されています。エンドユーザーには、このリポジトリをcloneするのではなく、公式のリリースページを利用するよう案内されています。

主な機能

  • 01OSHで既存のbash形式のシェルスクリプトを実行
  • 02PythonやJavaScriptユーザー向けの新しいシェル言語YSHを提供
  • 03変更やプロトタイピングが容易なPythonで記述
  • 04C++に変換し、Pythonに依存しない小さな実行ファイルを生成
  • 05シェル互換性の検証に使うspecテストスイートを収録

ユースケース

  • より一貫性のあるシェルランタイムで従来のbashスクリプトを実行する
  • 従来のシェル構文ではなく、Python風の構文でシェル自動化を記述する
  • 失敗するspecテストを修正し、シェル互換性の向上に貢献する

クイックスタート

  1. 1

    Wiki の Contributing の手順に従って dev build をビルドする

  2. 2

    対話型の OSH シェルを起動する

    bin/osh
  3. 3

    OSH でシェルスクリプトを実行する

    bin/osh myscript.sh
  4. 4

    YSH シェルを起動する

    bin/ysh

使う前に知っておきたいこと

  • このリポジトリでビルドできるのは Python の dev build であり、リリース版バイナリではありません。エンドユーザーは oils.pub の tarball リリースを使用してください。
  • メタデータではライセンスが明確に指定されていません(NOASSERTION)。

トピック

よくある質問

oils とは?
Oilsはbash互換シェルのOSHと、PythonやJavaScript風の新しいシェル言語YSHを備え、Pythonで記述してC++に変換されます。 Oilsはbashからの移行先となるシェルです。既存のシェルスクリプトを実行できるOSHと、従来のシェル構文を避けたいPythonやJavaScriptユーザー向けの新しいシェル言語YSHを備えています。
oils は無料で使えますか?ライセンスは?
oils は Other ライセンスのオープンソースです。商用製品で使う前にライセンス条件を確認してください。
oils は今もメンテナンスされていますか?
活発にメンテナンス中。oils の最終コミットは 2026年10月18日 です。
oils は何に使えますか?
より一貫性のあるシェルランタイムで従来のbashスクリプトを実行する 従来のシェル構文ではなく、Python風の構文でシェル自動化を記述する 失敗するspecテストを修正し、シェル互換性の向上に貢献する
oils のインストール方法は?
Wiki の Contributing の手順に従って dev build をビルドする 対話型の OSH シェルを起動する: bin/osh OSH でシェルスクリプトを実行する: bin/osh myscript.sh YSH シェルを起動する: bin/ysh
oils はどこで入手できますか?
ソースコードとインストール手順は GitHub にあります:https://github.com/oils-for-unix/oils

概要はプロジェクトの README をもとに AI が生成しています。GitHub の数値は毎日更新されます。

関連プロジェクト