wolfram

名前

wolfram コンソールインターフェース内でWolfram言語カーネルを起動する.

概要

wolfram

wolfram - actkey をアクティベートする

wolfram - スクリプト file

wolfram - initcode を実行する

説明

wolframは,スタンドアロンのWolfram言語カーネルをオペレーティングシステムのコンソールかシェルで実行する.コンソールベースのカーネルセッションは通常,入力をから読み取り,式を評価して,結果をに表示する.入力と出力は,標準のシェル構造を使ってリダイレクトすることができる.システムによっては,wolframWolframKernelは同じプログラムである.

オプション

ライセンスのオプション

-activate actkey アクティベーションを行うか確かめるかして終了する.

-licenseid $LicenseIDの値を表示して終了する.

-licenseinfo $LicenseIDの値だけでなく関連情報も表示して終了する.

-lmverbose MathLMとのインタラクションについての情報を標準エラーに表示する.

-pwfile file パスワードを から読み取る.

起動のオプション

-initfile file 初期化 でコマンドを実行する.

-noinit 標準的な場所から初期化ファイルを読み取らない.

-run cmd コマンド を起動時に実行する.

実行モードのオプション

-script file スクリプトモードでコマンドを から実行する.

-noprompt バナーやIn[]Out[]のプロンプトを表示したり,起動エラーのためにユーザに入力を要求(バッチスクリプトに有用)したりしない.

-rawterm ダム端末を想定し,カーソルキーでのナビゲーションを無効にする.

-wstp WSTPを通してのみ交信する.

ユーティリティのオプション

-machineid $MachineIDの値を表示し終了する.

-machineinfo $MachineName$MachineIDをタブで区切って表示し終了する.

-version 製品バージョンを表示し終了する.

詳細

Wolfram言語スクリプト

-scriptコマンドラインオプションが与えられた場合,カーネルはコマンドを一括して,あるいはスクリプトモードで から評価して終了する.

スクリプトモードでは,カーネルはバナーあるいはIn[]Out[]のラベルは表示せず,PageWidthオプションを事実上Infinityに設定して,すべての出力をInputFormで生成する.

スクリプトモードでは,標準の入出力はリダイレクトされないので,入出力は他のプロセスとともにパイプで使える.

スクリプトモードでは,「#!」の文字でファイルが始まる場合,カーネルはその第1行を無視する.

ライセンスのオプション

パスワードファイルが-pwfileを使って指定される場合には,そのパスワードがまず試される.有効なパスワードが見付からない場合には,標準のシステムの場所にあるパスワードファイルが試される.

-activate actkey では,$ActivationKeyの形式のキーがオンラインでアクティベーションを行い,キーを確かめ,インターネットを通してWolfram製品のアクティベーションサーバに接続することによって,最新のパスワードをダウンロードする."$ActivationKey password"の形式のキーは,インターネットにアクセスせずにオフラインでアクティベーションを行う.どちらの場合もアクティベーションが成功した場合にはゼロが返され,それ以外の場合には非零の値が返される.

オプション-licenseinfoは,$LicenseIDの値,そのライセンスで使用可能なWolfram言語プロセスの最大数,使用可能なプロセスの数をタブで区切って表示する.有効なライセンスが見付からない場合には,3つのフィールドすべてにゼロが表示され,非零の終了ステータスが返される.

起動と終了

カーネルは環境変数の値を読み取り,その値を任意のコマンドライン引数に加える.

Wolfram言語変数$IgnoreEOFTrueに設定されていない限り,カーネルはファイル終了文字列を受け取ったときに終了する.カーネルはコマンドQuitを与えられると常に終了する.

-nopromptが与えられると,変数$BatchOutputTrueに設定される.起動の際にInOutのラベルとバナーを省略するのに加えて,Wolfram言語は,PageWidthオプションを事実上Infinityに設定して,すべての出力をInputFormで生成する.

ライセンスその他の問題でカーネルが起動できない場合には,カーネルは非零の終了コードを返す.Exit[n]を使って別の値を返すのでない限り,通常カーネルはゼロの終了コードを終了時に返す.

-wstpが与えられると,WSOpenArgcArgvが理解する任意のWSTPオプションもコマンドラインで与えられることがある.

例題

インタラクティブな操作

Wolfram言語をインタラクティブなREPL内で実行する:

$ wolfram
Wolfram 14.1.0 Kernel for Mac OS X x86 (64‐bit)
Copyright 1988-2024 Wolfram Research, Inc.

In[1]:= 2+2

Out[1]= 4

In[2]:= 

インタラクティブなカーネルをカスタムの終了コードを使って終了する:

$ wolfram
Wolfram 14.1.0 Kernel for Mac OS X x86 (64‐bit)
Copyright 1988-2024 Wolfram Research, Inc.

In[1]:= Exit[5]

終了コードをUnixスタイルのシェル内で確かめる:

$ echo $?
5

終了コードをWindowsのcmd.exeシェル内で確かめる:

> echo %ERRORLEVEL%
5

ファイルからのコード

明示的に表示された式だけを可視にして,Wolfram言語コードをファイルから評価する:

file.wls
sum=2+2
integral=Integrate[1,x]
Print["Results: ",{sum,integral}]
$ wolfram -script test.wl
Results: {4, x}

Wolfram言語コードをファイルから評価し,それぞれの出力を表示する:

$ wolfram < test.wl
Wolfram 14.1.0 Kernel for Mac OS X x86 (64‐bit)
Copyright 1988-2024 Wolfram Research, Inc.

In[1]:= 
Out[1]= 4

In[2]:= 
Out[2]= x

In[3]:= Results: {4, x}

In[4]:=

バナーとin/outプロンプトを省略し,結果をInputFormにフォーマットする:

$ wolfram -noprompt < test.wl
4
x
"Results: "{4, x}

コマンドライン上での初期化

-runオプションを使って起動の際の変数を設定する:

$ wolfram -run 'AppendTo[$Path, "/favorite/path"]'
Wolfram 14.1.0 Kernel for Mac OS X ARM (64-bit)
Copyright 1988-2024 Wolfram Research, Inc.

In[1]:= Last[$Path]

Out[1]= /favorite/path

In[2]:=

明示的なExit[]を加えることによって,-runオプションを使って式を評価し終了することができる:

$ wolfram -run 'Print[\"Hello World\"];Exit[]'
Wolfram 14.1.0 Kernel for Linux x86 (64-bit)
Copyright 1988-2024 Wolfram Research, Inc.
Hello World

ファイルからの初期化

custom_init.wlを初期化ファイルの標準リストに加える:

$ wolfram -initfile custom_init.wl

初期化ファイルがロードされないようにする:

$ wolfram -noinit

custom_init.wlを唯一の初期化ファイルとして使う:

$ wolfram -noinit -initfile custom_init.wl

アクティベーション

アクティベーションキーを使って自動アクティベーションを行う:

$ wolfram -activate 1234-5678-ABCDEF

Automatic Web Activation received a password.

Creating password file entry in:
C:\Users\user\AppData\Roaming\Mathematica\Licensing\mathpass

ライセンス,プロセスの最大数,使用可能なプロセス(項目はタブで区切る)を確かめる:

$ wolfram -licenseinfo
L1234-5678      8       8

アクティベーションキーとパスワードを使って,オフラインでアクティベーションを行う:

$ wolfram -activate "1234-5678-ABCDEF 1234-567-890:8,8,16,16::20190130"
Creating password file entry in:
C:\Users\user\AppData\Roaming\Mathematica\Licensing\mathpass

追加例題

インストールのバージョンをチェックする:

$ wolfram -version
14.1.0 for Mac OS X x86 (64‐bit)

$MachineIDの値をチェックする;

$ wolfram -machineid
6202-11889-09929

$MachineName$MachineIDを,パスワードファイル項目のときのように,タブで区切って表示する:

$ wolfram -machineinfo
lap27    6202-11889-09929

カーネルが別のパスワードファイルを使って実行できるようにする:

$ wolfram -pwfile "/path/to/mathpass"
Wolfram 14.1.0 Kernel for Mac OS X x86 (64‐bit)
Copyright 1988-2024 Wolfram Research, Inc.

In[1]:=

カーネルを開始してWSTPリンクを作成する:

$ wolfram -wstp -linkcreate
Link created on: mvg8t_shm

もう一つのセッションから,リンクに接続し,それをアクティベートして入力を消去する:

リンクされたカーネルに評価を送信し,その結果を現行カーネルと比べる:

リンクを閉じる:

ファイル

ユーザ初期化ファイルの場所:

  • $BaseDirectory/Kernel/init.m
    $UserBaseDirectory/Kernel/init.m
  • パスワードファイルの場所:

  • $BaseDirectory/Licensing/mathpass
    $UserBaseDirectory/Licensing/mathpass
    $InstallationDirectory/Configuration/Licensing/mathpass
  • WOLFRAM言語の変数

    $ActivationKey wolframが使う完全なアクティベーションキー.

    $BatchOutput -nopromptがコマンドライン上で与えられるかどうか.

    $CommandLine 使用された完全なコマンドラインを与える文字列のリスト.

    $Epilog カーネルの終了時に実行するコマンド.

    $IgnoreEOF ファイル終了の文字が与えられたときでもwolframを続行するかどうか.

    $MachineID wolframが実行されているホストの一意的な識別コード.

    $MachineName wolframが実行されているホストの名前.

    $PasswordFile wolframのアクティベーションに成功したパスワードファイルへのパス.

    環境変数

    WOLFRAMINIT WolframKernelの呼出しのたびに追加される追加の引数.

    MATHKERNELINIT WOLFRAMINITが定義されていない場合に読み取られるレガシー変数.

    WOLFRAM_BASE $BaseDirectoryの値に使うパス.

    WOLFRAM_USERBASE $UserBaseDirectoryの値に使うパス.