I wish we could post attachments here! :x
I have a sopnet that does what you're after, I'm going to paste a cmd file here that should be faster that manually talking through the network. I stole this from the 5.0 example files(which many new users don't have access to!). I've hacked it to your particular needs. Cut and paste the following txt to a file, say bridge.cmd, then start a new houdini in the same directory it is saved, open a textport, type
opcd /obj
source bridge.cmd
and you should get something useful to examine/play with. Here goes - I hope! Grab everything from the opening comment line to the end - excluding my sig of course

I can grab and paste from Opera in Linux into a text file with the proper carriage returns - hopefully you can do the same on your platform. This is the fastest way, but if you can't get it to work, let me know and I can talk through the net - it's only 10 OPs. Oh yeah - there's a twist SOP in there to show some funky deforms, but you don't need it…8)
Cheers,
J.C.
####################################
# Automatically generated script: Tuesday May 13, 11:07
\set noalias = 1
set saved_path = `execute(“oppwf”)`
opcf /obj
# Node bridge_two_grids
opadd -n geo bridge_two_grids
oplocate -x 8.50469 -y 3.65021 bridge_two_grids
opparm bridge_two_grids stdswitcher ( 0 0 0 0 0 ) keeppos ( off ) pre_xform ( clean ) xOrd ( srt ) rOrd ( xyz ) t ( 0 0 5 ) r ( 0 0 0 ) s ( 1 1 1 ) p ( 0 0 0 ) scale ( 2 ) lookatpath ( “” ) lookup ( on ) pathobjpath ( “” ) roll ( 0 ) pos ( 0 ) pathorient ( 1 ) up ( 0 1 0 ) bank ( 1 ) shadespace ( “” ) dispspace ( “” ) shop_surfacepath ( “” ) shop_photonpath ( “” ) shop_displacepath ( “” ) lightmask ( * ) reflectmask ( * ) smooth ( on ) nobackface ( off ) autogen ( off ) reflmap ( ‘/usr/tmp/$OS.pic’ ) reflres ( 128 ) shading_switcher ( 0 0 0 ) ri_color ( off ) ri_Cs ( 1 1 1 ) ri_Os ( 1 1 1 ) ri_Xmit ( opaque ) rishader ( ‘“plastic”’ ) ridisplace ( “” ) riinterior ( “” ) shop_surfaceshadowpath ( “” ) shop_fogpath ( “” ) shop_backgroundpath ( “” ) shop_photonvolumepath ( “” ) shop_contourpath ( “” ) soundmat ( “” ) soundchop ( “” ) genshader ( “” ) gendisplace ( “” ) geninterior ( “” ) material ( _no_mATERIAL_ ) instancepath ( “” ) ptinstance ( off ) partinstancepath ( “” ) detail ( off ) detail_file ( “” ) detail_mantraproc ( “” ) detail_ribproc ( “” ) detail_blur ( off ) detail_min ( -1 -1 -1 ) detail_max ( 1 1 1 ) shop_geometrypath ( “” ) blur ( inherit ) tdisplay ( off ) display ( 1 ) tmatte ( off ) matte ( 0 ) tphantom ( off ) phantom ( 0 ) trbounce ( off ) rbounce ( 4 ) ttbounce ( off ) tbounce ( 10 ) trclip ( off ) rclip ( 0.001 ) tdbound ( off ) dbound ( 1 ) tshadequality ( off ) shadequality ( 1 ) lod ( 1 ) causticmode ( 3 ) gillummode ( 3 ) preinclude ( “” ) postinclude ( “” ) shadowquality ( 1 ) reflectquality ( 1 ) rest ( “” ) active ( 1 ) mass ( 1 ) bounce ( 1 ) fdynamic ( 0 ) fstatic ( 0 ) com ( 0 0 0 ) velocity ( 0 0 0 ) angvelaxis ( 0 0 1 ) angvelangle ( 0 ) popgeo ( _render_SOP_ ) cglod ( 1 ) itensor ( points ) itsamples ( 100 ) geochanges ( off ) use_dcolor ( on ) dcolor ( 1 1 1 ) picking ( on ) pickscript ( “” )
chlock bridge_two_grids -*
opcolor -c 0.7 0.7 0.7 bridge_two_grids
opset -d on -r on -h off -f off -y off -t off -l off -s off -u off -c off -C on -p on -e on -b off -S on -x off bridge_two_grids
opcf bridge_two_grids
# Node NURBs_circle
opadd -n circle NURBs_circle
oplocate -x 3.18192 -y 6.75945 NURBs_circle
chadd -t 0 4.96667 NURBs_circle beginangle
chkey -t 0 -v 0 -m 0 -a 1 -F ‘cubic()’ NURBs_circle/beginangle
chkey -t 4.96667 -v 0 -m 0 -a 1 NURBs_circle/beginangle
chadd -t 0 4.96667 NURBs_circle endangle
chkey -t 0 -v 185 -m 0 -a 1 -F ‘cubic()’ NURBs_circle/endangle
chkey -t 4.96667 -v 360 -m 0 -a 1 NURBs_circle/endangle
opparm NURBs_circle type ( nurbs ) orient ( xy ) rad ( 0.3 0.3 ) t ( 0 0 0 ) order ( 4 ) divs ( 5 ) arc ( closed ) angle ( beginangle endangle ) imperfect ( on )
chlock NURBs_circle -*
opcolor -c 0.7 0.7 0.7 NURBs_circle
opset -d off -r off -h off -f off -y off -t off -l off -s off -u off -c off -C off -p off -e on -b off NURBs_circle
# Node NURBs_grid
opadd -n grid NURBs_grid
oplocate -x 5.59034 -y 7.14907 NURBs_grid
opparm NURBs_grid type ( nurbs ) surftype ( quads ) orient ( xy ) size ( 1 1 ) t ( 0 0 0 ) rows ( 10 ) cols ( 10 ) orderu ( 4 ) orderv ( 4 ) interpu ( on ) interpv ( on )
chlock NURBs_grid -*
opcolor -c 0.7 0.7 0.7 NURBs_grid
opset -d off -r off -h off -f off -y off -t off -l off -s off -u off -c off -C off -p off -e on -b off NURBs_grid
# Node project_circle_on_grid
opadd -n project project_circle_on_grid
oplocate -x 5.04576 -y 5.42196 project_circle_on_grid
opparm project_circle_on_grid facegroup ( “” ) surfgroup ( “” ) cycle ( allseq ) switcher ( 0 0 ) axis ( zaxis ) vector ( 0 0 1 ) projside ( closest ) sdivs ( 6 ) rtolerance ( 0.01 ) ftolerance ( 0.01 ) uvgap ( 0.1 ) order ( 4 ) csharp ( on ) accurate ( off ) ufrom ( uvx ) vfrom ( uvy ) userange ( on ) urange ( 0.1 0.9 ) vrange ( 0.1 0.9 ) maptype ( unif )
chlock project_circle_on_grid -*
opcolor -c 0.7 0.7 0.7 project_circle_on_grid
opset -d off -r off -h off -f off -y off -t off -l off -s off -u off -c off -C on -p off -e on -b off project_circle_on_grid
# Node tube1
opadd -n tube tube1
oplocate -x 7.51215 -y 6.90805 tube1
opparm tube1 stdswitcher ( 0 0 ) type ( nurbs ) surftype ( quads ) orient ( z ) t ( 0 0 0.4 ) rad ( 0.1 0.1 ) height ( 0.3 ) imperfect ( on ) rows ( 2 ) cols ( 10 ) orderu ( 4 ) orderv ( 2 ) cap ( off )
chlock tube1 -*
opcolor -c 0.7 0.7 0.7 tube1
opset -d off -r off -h off -f off -y off -t off -l off -s off -u off -c off -C off -p off -e on -b off tube1
# Node merge1
opadd -n merge merge1
oplocate -x 5.92425 -y 3.76641 merge1
opparm merge1
chlock merge1 -*
opcolor -c 0.7 0.7 0.7 merge1
opset -d off -r off -h off -f off -y off -t off -l off -s off -u off -c off -C off -p off -e on -b off merge1
# Node carve1
opadd -n carve carve1
oplocate -x 7.06822 -y 5.18356 carve1
opparm carve1 group ( “” ) firstu ( off ) domainu1 ( 0.25 ) secondu ( off ) domainu2 ( 0.75 ) firstv ( off ) domainv1 ( 1 ) secondv ( on ) domainv2 ( 1 ) onlybreakpoints ( off off ) divsu ( 2 ) divsv ( 2 ) allubreakpoints ( off ) allvbreakpoints ( off ) stdswitcher ( 1 1 ) keepin ( off ) keepout ( off ) extractop ( xprofile ) keepOriginal ( off )
chlock carve1 -*
opcolor -c 0.7 0.7 0.7 carve1
opset -d off -r off -h off -f off -y off -t off -l off -s off -u off -c off -C off -p off -e on -b off carve1
# Node twist_for_deformation1
opadd -n twist twist_for_deformation1
oplocate -x 6.81696 -y 2.51879 twist_for_deformation1
opparm twist_for_deformation1 group ( “” ) op ( twist ) paxis ( x ) saxis ( y ) p ( 0 0 0 ) strength ( 0 ) roll ( 1 )
chlock twist_for_deformation1 -*
opcolor -c 0.7 0.7 0.7 twist_for_deformation1
opset -d off -r off -h off -f off -y off -t off -l off -s off -u off -c off -C off -p off -e on -b off twist_for_deformation1
# Node bridge_the_two_profiles1
opadd -n bridge bridge_the_two_profiles1
oplocate -x 7.31211 -y 1.20408 bridge_the_two_profiles1
opparm bridge_the_two_profiles1 group ( *.0 ) bridge ( all ) inc ( 2 ) order ( 4 ) stdswitcher ( 0 0 ) isodivs ( 5 ) frenet ( frenet ) circular ( off ) rotatet ( 0 0 0 ) scalet ( -0.53 1 0.8 ) curvature ( on ) scalec ( 0 0 0 ) sdivs ( 6 ) tolerance ( 0.01 ) csharp ( off )
chlock bridge_the_two_profiles1 -*
opcolor -c 0.7 0.7 0.7 bridge_the_two_profiles1
opset -d off -r off -h off -f off -y off -t off -l off -s off -u off -c off -C off -p off -e on -b off bridge_the_two_profiles1
# Node trim_the_holes1
opadd -n trim trim_the_holes1
oplocate -x 6.97063 -y 0.230853 trim_the_holes1
chadd -t 0 4.96667 trim_the_holes1 altitude
chkey -t 0 -v 0 -m 0 -a 1 -F ‘$ALTITUDE’ trim_the_holes1/altitude
chkey -t 4.96667 -v 0 -m 0 -a 1 trim_the_holes1/altitude
opparm trim_the_holes1 group ( “” ) optype ( keepout ) individual ( on ) bigloop ( off ) trimtol ( 1e-04 ) altitude ( altitude )
chlock trim_the_holes1 -*
opcolor -c 0.7 0.7 0.7 trim_the_holes1
opset -d off -r off -h off -f off -y off -t off -l off -s off -u off -c off -C off -p off -e on -b off trim_the_holes1
# Node choke_the_profiles1
opadd -n primitive choke_the_profiles1
oplocate -x 7.32919 -y -1.30582 choke_the_profiles1
chadd -t 0 4.96667 choke_the_profiles1 px
chkey -t 0 -v 0 -m 0 -a 1 -F ‘$CEX’ choke_the_profiles1/px
chkey -t 4.96667 -v 0 -m 0 -a 1 choke_the_profiles1/px
chadd -t 0 4.96667 choke_the_profiles1 py
chkey -t 0 -v 0 -m 0 -a 1 -F ‘$CEY’ choke_the_profiles1/py
chkey -t 4.96667 -v 0 -m 0 -a 1 choke_the_profiles1/py
chadd -t 0 4.96667 choke_the_profiles1 pz
chkey -t 0 -v 0 -m 0 -a 1 -F ‘$CEZ’ choke_the_profiles1/pz
chkey -t 4.96667 -v 0 -m 0 -a 1 choke_the_profiles1/pz
chadd -t 0 4.96667 choke_the_profiles1 upvectorx
chkey -t 0 -v 1 -m 0 -a 1 -F ‘$NX’ choke_the_profiles1/upvectorx
chkey -t 4.96667 -v 1 -m 0 -a 1 choke_the_profiles1/upvectorx
chadd -t 0 4.96667 choke_the_profiles1 upvectory
chkey -t 0 -v 1 -m 0 -a 1 -F ‘$NY’ choke_the_profiles1/upvectory
chkey -t 4.96667 -v 1 -m 0 -a 1 choke_the_profiles1/upvectory
chadd -t 0 4.96667 choke_the_profiles1 upvectorz
chkey -t 0 -v 1 -m 0 -a 1 -F ‘$NZ’ choke_the_profiles1/upvectorz
chkey -t 4.96667 -v 1 -m 0 -a 1 choke_the_profiles1/upvectorz
chadd -t 0 4.96667 choke_the_profiles1 diffr
chkey -t 0 -v 1 -m 0 -a 1 -F ‘$CR’ choke_the_profiles1/diffr
chkey -t 4.96667 -v 1 -m 0 -a 1 choke_the_profiles1/diffr
chadd -t 0 4.96667 choke_the_profiles1 diffg
chkey -t 0 -v 1 -m 0 -a 1 -F ‘$CG’ choke_the_profiles1/diffg
chkey -t 4.96667 -v 1 -m 0 -a 1 choke_the_profiles1/diffg
chadd -t 0 4.96667 choke_the_profiles1 diffb
chkey -t 0 -v 1 -m 0 -a 1 -F ‘$CB’ choke_the_profiles1/diffb
chkey -t 4.96667 -v 1 -m 0 -a 1 choke_the_profiles1/diffb
chadd -t 0 4.96667 choke_the_profiles1 alpha
chkey -t 0 -v 1 -m 0 -a 1 -F ‘$CA’ choke_the_profiles1/alpha
chkey -t 4.96667 -v 1 -m 0 -a 1 choke_the_profiles1/alpha
chadd -t 0 4.96667 choke_the_profiles1 crease
chkey -t 0 -v 0 -m 0 -a 1 -F ‘$CREASE’ choke_the_profiles1/crease
chkey -t 4.96667 -v 0 -m 0 -a 1 choke_the_profiles1/crease
chadd -t 0 4.96667 choke_the_profiles1 metaweight
chkey -t 0 -v 1 -m 0 -a 1 -F ‘$WEIGHT’ choke_the_profiles1/metaweight
chkey -t 4.96667 -v 1 -m 0 -a 1 choke_the_profiles1/metaweight
chadd -t 0 4.96667 choke_the_profiles1 prblur
chkey -t 0 -v 0.0333333 -m 0 -a 1 -F ‘1/$FPS’ choke_the_profiles1/prblur
chkey -t 4.96667 -v 0.0333333 -m 0 -a 1 choke_the_profiles1/prblur
opparm choke_the_profiles1 group ( *.0 ) templateGrp ( “” ) stdswitcher ( 0 0 0 0 0 ) doxform ( on ) dorot ( off ) xOrd ( srt ) rOrd ( xyz ) t ( 0 0 0 ) r ( 0 0 0 ) s ( 0.995 0.995 0.995 ) p ( px py pz ) lookatpath ( “” ) upvector ( upvectorx upvectory upvectorz ) doclr ( off ) diff ( diffr diffg diffb ) doalpha ( off ) alpha ( alpha ) docrease ( off ) crease ( crease ) dotexture ( off ) texture ( “” ) pshapeu ( off ) pshapev ( off ) closeu ( sameclosure ) closev ( sameclosure ) clampu ( sameclamp ) clampv ( sameclamp ) vtxsort ( samevertex ) vtxuoff ( 0 ) vtxvoff ( 0 ) doweight ( on ) metaweight ( metaweight ) doprender ( off ) prtype ( sphere ) prsize ( 0.05 ) prblur ( prblur ) prsphere ( on )
chlock choke_the_profiles1 -*
opcolor -c 0.7 0.7 0.7 choke_the_profiles1
opset -d on -r on -h off -f off -y off -t off -l off -s off -u off -c off -C off -p off -e on -b off choke_the_profiles1
opcf ..
opcf /obj
opcf bridge_two_grids
opwire -n NURBs_circle -0 project_circle_on_grid
opwire -n NURBs_grid -1 project_circle_on_grid
opwire -n project_circle_on_grid -0 merge1
opwire -n carve1 -1 merge1
opwire -n tube1 -0 carve1
opwire -n merge1 -0 twist_for_deformation1
opwire -n twist_for_deformation1 -0 bridge_the_two_profiles1
opwire -n bridge_the_two_profiles1 -0 trim_the_holes1
opwire -n trim_the_holes1 -0 choke_the_profiles1
opcf ..
opcf $saved_path