コマンドライン操作

コマンドラインフラグは、起動時にさまざまなオプションをアクティブにしますNukeコマンドラインまたはターミナルから、追加機能を提供しますNuke。最初に起動方法を説明しましょうNukeシェルから。

オンWindows

注意:  ターミナルエミュレータを使用している場合は、MacまたはLinuxの手順に従い、必要に応じてファイルパスを置き換えます。

コマンドラインプロンプトを開き、次のようにディレクトリを変更します。

cd C:\Program Files\Nuke12.1v1\

打ち上げへNuke、次のコマンドを入力します。

Nuke12.1.exe

または、設定することができますdoskey指すNukeその後、起動できますNuke任意のディレクトリから:

doskey nuke="C:\Program Files\Nuke12.1v1\Nuke12.1.exe"

ドスキーをしたいならNukeX、 入る:

doskey NukeX="C:\Program Files\Nuke12.1v1\Nuke12.1.exe" --NukeX

ドスキーをしたいならNuke Studio、 入る:

doskey nukes="C:\Program Files\Nuke12.1v1\Nuke12.1.exe" --studio

Mac

コマンドラインプロンプトを開き、次のようにディレクトリを変更します。

cd /Applications/Nuke12.1v1/Nuke12.1v1.app/Contents/MacOS/

打ち上げへNuke、次のコマンドを入力します。

./Nuke12.1v1

または、エイリアスを設定してNukeその後、起動できますNuke任意のディレクトリから。この手順は、デフォルトのシェルが何であるかによって異なります。使用しているシェルの名前を取得するには、ターミナルを起動して入力しますecho $SHELL

bashシェルを使用している場合は、次を入力します。

alias nuke='/Applications/Nuke12.1v1/Nuke12.1v1.app/Contents/MacOS/Nuke12.1v1'

あるいは、tcshシェルを使用している場合は、次のように入力します。

alias nuke /Applications/Nuke12.1v1/Nuke12.1v1.app/Contents/MacOS/Nuke12.1v1

エイリアスを作成する場合NukeX、 入る:

alias NukeX /Applications/Nuke12.1v1/Nuke12.1v1.app/Contents/MacOS/Nuke12.1v1 --NukeX

エイリアスを作成する場合Nuke Studio、 入る:

alias nukes /Applications/Nuke12.1v1/Nuke12.1v1.app/Contents/MacOS/Nuke12.1v1 --studio

ヒント:  エイリアスを追加できます.cshrcまたは.bashrcファイルをホームディレクトリに保存して、シェルを開くたびにアクティブ化されるようにします。この設定のヘルプについては、システム管理者にお問い合わせください。

Linuxの場合

コマンドラインプロンプトを開き、次のようにディレクトリを変更します。

cd /usr/local/Nuke12.1v1/

打ち上げへNuke、次のコマンドを入力します。

./Nuke12.1

または、エイリアスを設定してNukeその後、起動できますNuke任意のディレクトリから。この手順は、デフォルトのシェルが何であるかによって異なります。使用しているシェルの名前を取得するには、ターミナルを起動して入力しますecho $SHELL

bashシェルを使用している場合は、次を入力します。

alias nuke='/usr/local/Nuke12.1v1/Nuke12.1'

あるいは、tcshシェルを使用している場合は、次のように入力します。

alias nuke=/usr/local/Nuke12.1v1/Nuke12.1

エイリアスを作成する場合NukeX、 入る:

alias NukeX=/usr/local/Nuke12.1v1/Nuke12.1 --NukeX

エイリアスを作成する場合Nuke Studio、 入る:

alias nukes=/usr/local/Nuke12.1v1/Nuke12.1 --studio

ヒント:  エイリアスを追加できます.cshrcまたは.bashrcファイルをホームディレクトリに保存して、シェルを開くたびにアクティブ化されるようにします。この設定のヘルプについては、システム管理者にお問い合わせください。

コマンドラインフラグの使用

これで、起動時にコマンドラインフラグを試すことができます。 Nuke。バージョン番号とビルド日付を表示するものを次に示します。

nuke -version

あなたが持っている場合.nkスクリプトを使用すると、GUIバージョンを開かずにコマンドラインでレンダリングできます。以下は、100フレームをレンダリングする例です。 Nuke脚本:

nuke -F 1-100 -x myscript.nk

使用方法に注意してください-Fコマンドラインをオンにしてフレーム範囲を指定し、開始フレームと終了フレームをダッシュで区切ります。

注意:  を使用することをお勧めします-Fコマンドラインでフレーム範囲を定義するたびに切り替えます。これは、スクリプト名引数の前にある必要があります。
ただし、後方互換性のために、古い構文を使用することもできます。これを行うには、コマンドの最後にフレーム範囲を配置し、開始フレームと終了フレームをコンマで区切ります。例えば:
nuke -x myscript.nk 1,100

使用可能なコマンドラインフラグ(スイッチ)のリストを表示するには、次のコマンドを使用します。

nuke -help

以下は、テーブル内のコマンドラインフラグのリストです。

スイッチ/フラグ

アクション

-a

フォーマットのデフォルトはアナモルフィックです。

-cサイズ(k、M、またはG)

キャッシュメモリの使用を制限します。 sizeバイト数に等しい。追加することで別のユニットを指定できますk (キロバイト)、 M (メガバイト)、またはG (ギガバイト)後size

-続き

Nukeエラーの後、指定された範囲内の後続のフレームをレンダリングしようとします。いつ--cont指定されていない場合、エラーが発生するとレンダリングが停止します。

-クラッシュハンドリング1

-クラッシュハンドリング0

Breakpadのクラッシュレポート機能を使用すると、万一クラッシュが発生した場合に、クラッシュダンプをFoundryに送信できます。デフォルトでは、クラッシュレポートはGUIモードで有効になり、ターミナルモードで無効になります。

使用する--crashhandling 1。GUIモードと端末モードの両方でクラッシュレポートを有効にします。

使用する--crashhandling 0は、GUIモードと端末モードの両方でクラッシュレポートを無効にします。

ヒント:  NUKE_CRASH_HANDLING環境変数を使用して、クラッシュ処理を制御することもできます。見る環境変数詳細については。

-d <xサーバー名前>

これによりNuke別のマシンで実行中に1つのマシンで表示されます。(Linuxのみで、ターゲットマシン上のXサーバーへのリモートアクセスを許可するための設定が必要です)。

-f

開いたNukeフル解像度のスクリプト。このフラグを使用して、プロキシイメージを表示して保存されたスクリプトを開いて、フル解像度のイメージを表示できます。こちらもご覧ください-p

-F

スクリプトを実行するフレーム番号。すべて-F引数は、スクリプト名引数の前になければなりません。ここではいくつかの例を示します。

-F 3フレーム3を示します。

-F 1-10フレーム1、2、3、4、5、6、7、8、9、10を示します。

-F 1-10x2フレーム1、3、5、7、および9を示します。

複数のフレーム範囲を使用することもできます。

nuke -F 1-5 -F 10 -F 30-50x2 -x myscript.nk

-GPU ARG

設定すると、オプションのGPUインデックス引数(デフォルトは0)を使用して、ターミナルモードでGPUの使用を有効にします。使用する--gpulist選択可能なGPUを表示します。

注意:  設定されたGPUをオーバーライドしますPreferences > Performance > Hardware対話モードで実行する場合。

--gpulist

選択可能なGPUとそれに対応するインデックスを印刷して使用します--gpu ARGオプション。

-h

コマンドラインヘルプを表示します。

-助けて

コマンドラインヘルプを表示します。

-私

インタラクティブ(nuke_i)RLMライセンスキーを使用します。このフラグは、バックグラウンドレンダリングスクリプトと組み合わせて使用します。 -x。デフォルトで-x nuke_rライセンスキーを使用しますが、 -xi nuke_iライセンスキーを使用して背景をレンダリングします。

注意:  まだFLEXlmライセンスを使用していて、RLMライセンスへの移行に関心がある場合は、お問い合わせくださいsales@foundry.com代替ライセンスを取得します。

-l

新しい読み取りまたは書き込みノードの色空間は、デフォルトではなく線形に設定されています。

-m#

スレッド数を次の値で指定された値に設定します #

--multigpu

同じタイプの複数のGPUがインストールされている場合、この設定を有効にして、利用可能なGPU間で作業を共有して、処理速度を向上させることができます。これはグローバル設定であり、すべてのGPU対応ノードに適用されます。

見るWindowsMac OS XおよびmacOS 、またはLinux GPUの詳細についてはNukeサポートします。

-n

ノードに郵便切手のないスクリプトを開きます。

--nocrashprompt

GUIモードでクラッシュ処理が有効になっている場合、クラッシュレポーターダイアログを表示せずにクラッシュレポートを自動的に送信します。

ヒント:  NUKE_NO_CRASH_PROMPT環境変数を使用して、クラッシュプロンプトを制御することもできます。見る環境変数詳細については。

-核兵器

打ち上げNuke Assist、の一部としてライセンスされていますNukeXメンテナンスパッケージ。ペイント、ロトスコープ、トラッキングを行うアーティストのワークステーションとして使用することを目的としています。2つの無料ライセンスがすべてに含まれていますNukeXライセンス。

-p

開いたNukeプロキシ解決のスクリプト。保存されているフル解像度の画像を表示するスクリプトを開いて、このフラグを使用してプロキシ解像度の画像を表示できます。こちらもご覧ください-f

-P

ノードのパフォーマンスメトリックを測定し、ノードグラフに表示します。見るパフォーマンスタイミングの使用詳細については。

-一時停止

コマンドラインで指定されたスクリプトの初期ビューアは一時停止する必要があります。

-Pf <ファイル名>

ノードのパフォーマンスメトリックを測定し、レンダリング時にXMLファイルに書き込みます。見るパフォーマンスタイミングの使用詳細については。

--nc

走るNukeNuke Non-Commercialモード。見る約Nuke非営利詳細については。

-優先度p

走るNuke別の優先度で、次から選択できます。

high (Linux / OS Xのスーパーユーザーのみが利用可能)

medium

low

--python-no-root-knobdefaults

Pythonスクリプトの実行時にノブのデフォルトがルートノードに適用されないようにします。

-q

静かなモード。これにより、シェルへのすべての印刷が停止します。

-リマップ

簡単に共有するためにファイルパスを再マッピングできますNuke異なるオペレーティングシステムにわたるプロジェクト。これは、 Path Remaps の制御Preferencesダイアログ。

--remapフラグは、コンマで区切られたパスのリストを引数として取ります。パスはペアで配置され、各ペアの最初のパスが各ペアの2番目のパスにマッピングされます。たとえば、次を使用する場合:

nuke -t --remap "X:/ path、Y:、A:、B:/ anotherpath"

次で始まるパスX:/pathで始まるように変換されますY:

次で始まるパスA:で始まるように変換されますB:/anotherpath

--remapフラグは、次の場合にエラーをスローします。

GUIモードの開始時に定義されます。つまり、 -xまたは-t

パスはペアになりません。たとえば、次を使用する場合:

nuke -t --remap "X:/ path、Y:、A:"

A:何にもマップされず、エラーが生成されます。

--remapフラグは、パスを指定しないと警告を表示します(エラーは表示しません)。例えば:

nuke -t --remap ""

注意:  マッピングはにのみ適用されることに注意してくださいNuke開始されているセッション。GUIで使用されるPreferences.nkファイルには影響しません。

-s#

スレッドごとのスタックサイズをバイト単位で設定します。デフォルト値は16777216(16 MB)です。許容される最小値は1048576(1 MB)です。

なしNukeのデフォルトノードはデフォルトのメモリスタック値以上を必要としますが、メモリバッファから大きなスタックを要求するカスタムノードを作成した場合、スタックサイズを増やすとスタックオーバーフローエラーを防ぐことができます。

- 安全

ランニングNukesafe mode起動時に次の読み込みを停止します。

〜/ .nukeのスクリプトまたはプラグイン

$ NUKE_PATHまたは%NUKE_PATH%内のスクリプトまたはプラグイン

OFXプラグイン(FurnaceCoreを含む)

--sro

Nuke読み取りノードが以前の書き込みノードで作成されたファイルを使用できるように、書き込みノードのレンダリング順序に従う。

-t

端末モード(GUIなし)。これにより、GUIを起動せずにPythonコマンドを入力できます。このモード中に>>>コマンドプロンプトが表示されます。quit()を入力してこのモードを終了し、シェルプロンプトに戻ります。このモードはデフォルトでnuke_rライセンスキーを使用しますが、-tiフラグコンボを使用してnuke_iキーを使用するように取得できます。

--tg

ターミナルモード。これにより、Pyside / PyQtを使用できるようにQApplicationも起動します。このモードは対話型ライセンスを使用し、LinuxではXが必要ですWindowsセッションを表示します。

-Vレベル

詳細モード。ターミナルでは、各アクションが実行されるときに明示的なコマンドが表示されますNuke。指定するlevelターミナルでさらに印刷するには、次から選択します。

0 (冗長ではない)

1 (出力Nukeスクリプトのロードと保存)

2 (プラグインのロード、Python、Tcl、 Nukeスクリプト、進行状況、バッファレポート)

-v

このコマンドは、画像ファイルを表示しますNukeビューア。以下に例を示します。

nuke -v image.tif

-ビューv

指定されたビューのみを実行します。複数のビューの場合、コンマ区切りリストを使用します。

left,right

- バージョン

シェルにバージョン情報を表示します。

-バツ

実行モード。かかりますNukeすべてのアクティブな書き込みノードをスクリプト化してレンダリングします。

注意:  Nuke Non-Commercial暗号化に制限されています.nkncとスクリプト-xコマンドラインから、つまり、構文を使用して:
nuke -x myscript.nknc

このモードでは、nuke_rライセンスキーが使用されます。nuke_iライセンスキーを使用するには、次を使用します-xi。これは構文です:

nuke -xi myscript.nk

オンWindows、押すことができますCtrl+Breakレンダーがアクティブな場合は終了せずにレンダーをキャンセルし、そうでない場合は終了します。Ctrl/Cmd+Cすぐに終了します。

MacおよびLinuxでは、 Ctrl/Cmd+C常に終了します。

注意:  まだFLEXlmライセンスを使用していて、RLMライセンスへの移行に関心がある場合は、お問い合わせくださいsales@foundry.com代替ライセンスを取得します。

-バツノード

によって指定された書き込みノードのみをレンダリングしますノード。

--

終了スイッチ。スクリプトをダッシュで開始するか、そのままにすることができます-stdinから読み取る

一般的な構文

これは、起動時にこれらのオプションを使用するための一般的な構文ですNukeコマンドプロンプトで:

nuke <switches> <script> <argv> <ranges>

<switches>-の動作を変更しますNukeコマンドラインから実行した場合。スイッチのリストは上の表にあります。これらはフラグと呼ばれることもあります。

<script>-の名前Nuke脚本。

<argv>-で使用できるオプションの引数Nuke。以下の例を参照してください。

<ranges>-これはレンダリングしたいフレーム範囲です。

いくつかの実用的な例を考えてみましょう。

打ち上げへNukeスクリプトを開きます。

nuke myscript.nk

私は知っていますが、スクリプト-myscript.nkを呼び出しましたが、ファイル名の先頭のハイフンが混乱していますNuke。ファイルの名前を変更したくない場合にこれを回避するには、二重ハイフン構文を使用します。

nuke -- -myscript.nk

画像を表示するには:

nuke -v polarbear.tif

複数の画像を表示するには:

nuke -v polarbear.tif whiteflower.psd mountains.cin

イメージシーケンスを表示するには(taxi.0001.tif、taxi.0002.tif、...、taxi.0050.tif):

nuke -v taxi.####.tif 1-50

フレーム5をレンダリングするにはNuke脚本:

nuke -F 5 -x myscript.nk

フレームの30〜50をレンダリングするにはNuke脚本:

nuke -F 30-50 -x myscript.nk

2つのフレーム範囲、10-20および34-60をレンダリングするには、 Nuke脚本:

nuke -F 10-20 -F 34-60 -x myscript.nk

の50フレームシーケンスの10フレームごとにレンダリングするにはNuke脚本:

nuke -F 1-50x10 -x myscript.nk

これにより、フレーム1、11、21、31、41がレンダリングされます。

WriteBlurおよびWriteInvertと呼ばれる2つの書き込みノードを持つスクリプトでは、このコマンドはWriteBlurノードからフレーム1〜20をレンダリングするだけです。

nuke -X WriteBlur myscript.nk 1-20

[argv 0]を使用する

[argv]を使用して、出力ファイル名を変更しましょう。GUIバージョンを起動しますNuke書き込みノードにチェッカーを配置するノードツリーを作成します。書き込みノードプロパティパネルをダブルクリックして開き、ファイルテキストフィールドに次のファイル名を入力します。

[argv 0]。####。tif

スクリプトを保存して終了しますNuke。コマンドラインで次のように入力します。

nuke -x myscript.nk mychecker 1-5

これにより、5つのフレーム(mychecker.0001.tif、mychecker.0002.tifなど)がレンダリングされます。

別の変数を追加して、出力画像ファイルのタイプを制御できます。ファイルテキストフィールドには次のものが必要です。

[argv 0]。####。[argv 1]

次に、次のコマンドを使用してスクリプトをレンダリングします。

nuke -x myscript.nk mychecker cin 1-5

mychecker.0001.cin、mychecker.0002.cinなどを取得するには

<argv>文字列は、スクリプトに変数引数を提供する任意の[argv n]式にすることができます。これらは、間に配置する必要があります<スクリプト>そしてその <範囲> コマンドラインで。複数の式を含めることができますが、フレーム範囲コントロールとの混同を避けるために、それぞれが数字以外の文字で始まる必要があります。式の詳細については、 表現

Pythonを使用してTIFFをJPEGに変換する

このコマンドライン方式は、5つのTIFFフレームをJPEGに変換します。

nuke -t

>>> r = nuke.nodes.Read(file = ”myimage.####.tif”)

>>> w = nuke.nodes.Write(file = ”myimage.####.jpg”)

>>> w.setInput( 0, r )

>>> nuke.execute(“Write1”, 1,5)

>>> quit()

これらのコマンドを1行ずつ入力するのは少し面倒です。そこで、それらをimageconvert.pyというテキストファイルに入れて、 Nuke Pythonスクリプトを実行します。

cat imageconvert.py

r = nuke.nodes.Read(file = ”myimage.####.tif”)

w = nuke.nodes.Write(file = ”myimage.####.jpg”)

w.setInput( 0, r )

nuke.execute(“Write1”, 1,5)

nuke -t < imageconvert.py

Pythonスクリプトをコマンドラインパラメーターとして渡すこともできます。これにより、スクリプト名の後に追加のパラメーターを入力してスクリプトに渡すことができます。その場合、sys.argv [0]は実行中のPythonスクリプトの名前であり、argv [1:]は渡した他のパラメーターであることに注意してください。この一例を以下に示します。パラメーターを解析する他の方法については、標準のPythonモジュールoptparseを参照してください。

cat imageconvertwithargs.py

import sys

r = nuke.nodes.Read(file = sys.argv[1])

w = nuke.nodes.Write(file = sys.argv[2])

w.setInput(0, r)

nuke.execute("Write1", 1, 5)

nuke -t imageconvertwithargs.py myimage.####.tif myimage.####.jpg