<p>Given a .SCAD file which contains some modules, how can I execute one of those modules from the command line?</p>
<p><strong>example.scad</strong></p>
<pre><code>module One() { ... }
module Two() { ... }
</code></pre>
<p><strong>render.sh</strong></p>
<pre><code>openscad -q -o one.stl --module One example.scad
</code></pre>
<p>Note that there is no <code>--module</code> option, but that is what I'm attempting to do. The workaround would be to make another .SCAD file e.g. <code>one.scad</code> which includes <code>example.scad</code>, and simply calls <code>One();</code> within and render that file from the shell file. But this is not ideal.</p>

OpenSCAD doesn't have such an option on the command line, but the general idiom I believe you want to use is have
```
.scad
```
source files which are modules include invocations of the module(s) at the top-level controllable by variables you can set on the command line or GUI customizer interface. Any such invocations will be ignored if the file is used (via
```
use
```
directive) in another file so they don't hurt its status as a library and make it easier to preview/test. So for example you could have:
```
```
wantOne = false;
if (wantOne) One();
```
```
and then set
```
wantOne
```
to
```
true
```
from the command line.