명령 줄 작업

명령 줄 플래그는 시작할 때 다양한 옵션을 활성화합니다 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 쉘을 열 때마다 활성화되도록 홈 디렉토리에 파일을 저장하십시오. 이를 설정하는 데 도움이 필요하면 시스템 관리자에게 문의하십시오.

리눅스에서

명령 행 프롬프트를 열고 다음과 같이 디렉토리를 변경하십시오.

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 버전을 열지 않고도 명령 줄에서 렌더링 할 수 있습니다. 다음은 백 프레임을 렌더링하는 예입니다. Nuke 스크립트:

nuke -F 1-100 -x myscript.nk

사용 방법에 유의하십시오 -F 시작 및 끝 프레임을 대시로 구분하여 프레임 범위를 나타내려면 명령 줄에서 전환하십시오.

노트 :  우리는 당신이 사용하는 것이 좋습니다 -F 명령 행에서 프레임 범위를 정의 할 때마다 전환하십시오. 스크립트 이름 인수 앞에 와야합니다.
그러나 이전 버전과의 호환성을 위해 이전 구문을 사용할 수도 있습니다. 이렇게하려면 명령 끝에 프레임 범위를 놓고 쉼표를 사용하여 시작 및 끝 프레임을 구분하십시오. 예를 들면 다음과 같습니다.
핵무기 -x myscript.nk 1,100

사용 가능한 명령 행 플래그 (스위치) 목록을 표시하려면 다음 명령을 사용하십시오.

nuke -help

다음은 테이블에있는 명령 행 플래그 목록입니다.

스위치 / 플래그

동작

-ㅏ

형식은 기본적으로 아나모픽으로 설정됩니다.

-c 크기 (k, M 또는 G)

캐시 메모리 사용량을 제한하십시오. size 바이트 수와 같습니다. 추가하여 다른 단위를 지정할 수 있습니다 k (킬로바이트) M (메가 바이트) 또는 G 후 (기가 바이트) size.

-계속

Nuke 오류 후 지정된 범위에서 후속 프레임을 렌더링하려고 시도합니다. 언제 --cont 를 지정하지 않으면 오류가 발생하면 렌더링이 중지됩니다.

-충돌 처리 1

-충돌 처리 0

Breakpad 충돌보고를 사용하면 충돌이 발생할 경우 충돌 덤프를 Foundry에 제출할 수 있습니다. 기본적으로 충돌보고는 GUI 모드에서 활성화되고 터미널 모드에서는 비활성화됩니다.

사용하다 --crashhandling GUI와 터미널 모드에서 충돌보고를 활성화하려면 1입니다.

사용하다 --crashhandling GUI와 터미널 모드에서 충돌보고를 비활성화하려면 0입니다.

팁:  NUKE_CRASH_HANDLING 환경 변수를 사용하여 충돌 처리를 제어 할 수도 있습니다. 보다 환경 변수 자세한 내용은.

-d <x 서버 이름>

이것은 허용 Nuke 다른 컴퓨터에서 실행하는 동안 한 컴퓨터에서 볼 수 있습니다. (Linux 만 해당하며 대상 시스템의 X 서버에 원격으로 액세스 할 수 있도록 설정해야합니다).

-에프

열다 Nuke 전체 해상도에서 스크립트. 프록시 이미지를 표시하기 위해 저장된 스크립트는이 플래그를 사용하여 전체 해상도 이미지를 표시하기 위해 열 수 있습니다. 또한보십시오 -p.

-에프

스크립트를 실행할 프레임 번호모두 -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 인덱스 인수를 사용하여 터미널 모드에서 GPU 사용을 활성화합니다. 기본값은 0입니다. 사용하다 --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 대체 라이센스를 얻습니다.

-엘

새로운 읽기 또는 쓰기 노드의 색상 공간은 기본값이 아닌 선형으로 설정되어 있습니다.

-미디엄 #

스레드 수를 다음으로 지정된 값으로 설정하십시오. #.

-멀티 GPU

동일한 유형의 GPU가 여러 개 설치된 경우이 기본 설정을 사용하여 처리 속도를 높이기 위해 사용 가능한 GPU간에 작업을 공유 할 수 있습니다. 이것은 전역 환경 설정이며 모든 GPU 지원 노드에 적용됩니다.

보다 Windows, Mac OS X 및 macOS 또는 리눅스 GPU에 대한 자세한 정보 Nuke 지원합니다.

-엔

노드에 우표없이 스크립트를 엽니 다.

--nocrashprompt

GUI 모드에서 충돌 처리가 사용 가능한 경우 충돌보고 대화 상자를 표시하지 않고 충돌 보고서를 자동으로 제출하십시오.

팁:  NUKE_NO_CRASH_PROMPT 환경 변수를 사용하여 충돌 프롬프트를 제어 할 수도 있습니다. 보다 환경 변수 자세한 내용은.

-누카 시스트

시작하다 Nuke Assist의 일부로 라이센스가 부여 된 NukeX 유지 보수 패키지이며 페인팅, 로토 스코핑 및 추적을 수행하는 아티스트를위한 워크 스테이션으로 사용하도록 고안되었습니다. 모든 제품에 2 개의 무료 라이센스가 포함되어 있습니다 NukeX 특허.

-피

열다 Nuke 프록시 해결시 스크립트. 이 플래그를 사용하여 프록시 해상도 이미지를 표시하기 위해 전체 해상도 이미지를 표시하도록 저장된 스크립트를 열 수 있습니다. 또한보십시오 -f.

-피

노드의 성능 메트릭을 측정하여 노드 그래프에 표시하십시오. 보다 성능 타이밍 사용 자세한 내용은.

--중지

명령 행에 지정된 스크립트의 초기 뷰어는 일시 정지되어야합니다.

-Pf <파일 이름>

노드의 성능 메트릭을 측정하고 렌더링시 XML 파일에 씁니다. 보다 성능 타이밍 사용 자세한 내용은.

--체크 안함

NukeNuke Non-Commercial 방법. 보다 약 Nuke 비상업적 자세한 내용은.

-우선 순위 p

Nuke 우선 순위가 다른 다음 중에서 선택할 수 있습니다.

high (Linux / OS X의 수퍼 유저 만 사용 가능)

medium

low

--python-no-root-knobdefaults

Python 스크립트를 실행할 때 노브 기본값이 루트 노드에 적용되지 않도록합니다.

-큐

저소음 모드. 쉘로의 모든 인쇄가 중지됩니다.

-재맵

쉽게 공유하기 위해 파일 경로를 다시 매핑 할 수 있습니다 Nuke 다른 운영 체제에 걸친 프로젝트. 이것은 명령 줄을 설정하는 것과 같습니다. Path Remaps 의 제어 Preferences 대화.

--remap 플래그는 쉼표로 구분 된 경로 목록을 인수로 사용합니다. 경로는 각 쌍의 제 1 경로가 각 쌍의 제 2 경로에 매핑되는 쌍으로 배열된다. 예를 들어 다음을 사용하는 경우 :

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

로 시작하는 모든 경로 X:/path 로 시작 변환 Y:

로 시작하는 모든 경로 A: 로 시작 변환 B:/anotherpath

다음과 같은 경우 --remap 플래그가 오류를 발생시킵니다.

GUI 모드를 시작할 때, 즉 -x 또는 -t

경로가 페어링되지 않습니다. 예를 들어 다음을 사용하는 경우 :

nuke -t --remap "X : / 경로, Y :, A :"

A: 아무 것도 매핑하지 않고 오류가 발생합니다.

--remap 플래그는 경로를 지정하지 않으면 경고를 표시하지만 오류는 발생하지 않습니다. 예를 들면 다음과 같습니다.

nuke -t --remap ""

노트 :  매핑은 Nuke 시작되는 세션. GUI에서 사용하는 Preferences.nk 파일에는 영향을 미치지 않습니다.

-s #

스레드 당 스택 크기를 바이트 단위로 설정합니다. 기본값은 16777216 (16MB)입니다. 허용되는 최소값은 1048576 (1MB)입니다.

해당 사항 없음 Nuke의 기본 노드에는 기본 메모리 스택 값보다 많은 값이 필요하지만 메모리 버퍼에서 큰 스택을 요청하는 사용자 정의 노드를 작성한 경우 스택 크기를 늘리면 스택 오버플로 오류를 방지 할 수 있습니다.

--안전한

달리는 Nukesafe mode 시작시 다음로드를 중지합니다.

~ / .nuke의 모든 스크립트 또는 플러그인

$ NUKE_PATH 또는 % NUKE_PATH %의 모든 스크립트 또는 플러그인

모든 OFX 플러그인 (FurnaceCore 포함)

--sro

부대 Nuke 읽기 노드가 이전 쓰기 노드에서 작성된 파일을 사용할 수 있도록 쓰기 노드의 렌더링 순서를 준수합니다.

-티

터미널 모드 (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

--view v

지정된 뷰만 실행하십시오. 여러보기의 경우 쉼표로 구분 된 목록을 사용하십시오.

left,right

--버전

쉘에 버전 정보를 표시하십시오.

-엑스

확장 모드. 걸립니다 Nuke 스크립트를 작성하고 모든 활성 쓰기 노드를 렌더링합니다.

노트 :  Nuke Non-Commercial 암호화되어 있습니다 .nknc 스크립트 -x 명령 행에서, 즉 다음 구문을 사용하십시오.
nuke -x myscript.nknc

이 모드는 nuke_r 라이센스 키를 사용합니다. nuke_i 라이센스 키를 사용하려면 -xi. 이것은 구문입니다.

핵무기 -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>

<스위치>-동작을 수정합니다 Nuke 명령 줄에서 실행할 때스위치 목록은 위 표에 나와 있습니다. 이를 때때로 플래그라고합니다.

<script>-의 이름 Nuke 스크립트.

<argv>-사용할 수있는 선택적 인수 Nuke. 아래 예를 참조하십시오.

<범위>-렌더링하려는 프레임 범위입니다.

실제적인 예를 생각해 봅시다.

개시하다 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

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라는 두 쓰기 노드가있는 스크립트에서이 명령은 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()

이 명령을 한 줄씩 입력하면 약간 지루합니다. 이미지 변환을 imageconvert.py라는 텍스트 파일에 넣고 Nuke 파이썬 스크립트를 실행합니다.

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