Run bash command in terminal using PDG

   4139   6   1
User Avatar
Member
85 posts
Joined: April 2014
Offline
I was wondering how I would run a linux terminal bash script using PDG. Something like the Unix sop node, but in TOPS. It is just a one line script (it is actually just “deadlineslave” to start a Deadline slave on my workstation).
User Avatar
Staff
600 posts
Joined: May 2014
Offline
The Generic Generator node lets you run any executable that's on your PATH as a work item. If you want to actually use the shell itself, e.g. for piping between several executables, you'll need to run it with /bin/sh (or your shell of choice). For example, setting a Generic Generator's command field to /bin/sh -c “ls -la | grep *.txt”.

In you case though, you probably just want something like deadlineslave -nogui -name “somename”, which would work fine as long as the deadlineslave executable can be found on the PATH.
User Avatar
Member
85 posts
Joined: April 2014
Offline
Is there a way to run hscript commands in PDG as well, something like “opparm -c /out/mantra1 execute”.
I tried it with the Generic Generator with no success.
User Avatar
Member
603 posts
Joined: Sept. 2016
Offline
We don't have an hscript processor, I think you could do this using a pythonscript node (in-process), with
hou.hscript()
function.

EDIT: But be careful because triggering a Houdini cook in the middle of a PDG cook is not something we've tested.
Edited by chrisgreb - May 3, 2019 14:52:19
User Avatar
Member
85 posts
Joined: April 2014
Offline
Yeah it doesn't seem to work.

hou.hscript('opparm -c opparm -c /out/mantra1 execute')
User Avatar
Member
15 posts
Joined: July 2012
Offline
and is there anyway to run windows commands (MS DOS) in a loop with the Generic Generator and the Generic range generator?
Claire
http://www.coclea.eu [coclea.eu]
User Avatar
Member
7 posts
Joined: May 2024
Offline
Tyler Britton2
I was wondering how I would run a linux terminal bash script using PDG. Something like the Unix sop node, but in TOPS. It is just a one line script (it is actually just “deadlineslave” to start a Deadline slave on my workstation).

Though I haven't utilized PDG, I can assist brainstorm! While there may not be a direct counterpart to the Unix sop node, try these methods:

Command Launch: PDG may feature a "command launch" capability to perform a shell command. You may execute your "deadlineslave" script directly. PDG manual explains how to do this.
Python Script: If PDG enables Python code, build a small Python script that calls os.system to execute your bash script. A more structured approach may give greater flexibility.
Let me know if you try either and how it goes! If not, a forum member may know PDG-specific information.
  • Quick Links