procvter
来自「proe5.0野火版下载(中文版免费下载)」· 代码 · 共 2,131 行 · 第 1/5 页
TXT
2,131 行
#!/bin/csh -f## 12/18/89 James Created.# 04/11/90 James Added -ok and make -tmp safe.# 05/02/90 James Added trail file vers check (275), -tmp fix.# 06/07/90 James Run pro in the tmp directory, allow y/n.# 06/25/90 James Prompt for list of files to cnvt was confusing.# 08/09/90 James quote . in greps, core file in convdir too, added dg,# ibm_rs6000,olivetti860.# 08/27/90 James Added .mfg# 09/17/90 6.0 James Version, user's config.pro, prjutil to # bypass prj header. Action and Warn if {dms,nlo}# servers are sensed '-servs' can override. # Set SGI gfxnum=0 for 5.0-9011 and above;# prompt_on_exit, ignore_family_type, -prjdir,# which procmd, * in prj create, '-ftab', removed # objrefdir to fix .mfg. cd fix. -run, prjdir # fixes: vers when target=start, DO convert# non-proproj. wc_maxdirlen high by def.# trlchk for objects button. better prjdir vers # fix. trlchk for mode button, do drw before asm.# dot.awk. whichline_tmp. -prj_name. reorder log, added # procmd. processing msg. targetdir defs to startdir # if not set in args mode. prj_name interface. check# fetch status. fix -prjdir file in sub-dir ver.# core in tmpdir.# 11/05/90 6.1 James Fix df output and adjust fcol for sys5 m/c's.# 11/19/90 6.2 James svopt_val is 'true' for 5.2# 11/29/90 6.3 James Fixed 'which' for ps/2, rt, tek.# 01/03/90 6.4 James prj_repfile for 6.1# 01/21/90 6.5 James mv -f, discard invalid soft links. shorten __convert__ # to __cv__, cd to initialdir before rm tmpdir.# 01/25/90 6.6 James prj_repfile for A-25-06+# 02/23/90 6.7 James sun -> sun3,sun4,sun386.# 03/07/90 7.0 James version change - 7.0 shipped w/ Pro/E 7.0# added hp700. Fixed mcol/fcol for RT.# 04/01/90 7.1 James if est > avail space ask whether to continue.# 04/17/90 7.2 James Removed some things.# 04/19/90 7.3 James Obsoleted ibm_rt, olivetti860, hp800.# 04/23/90 7.4 James filter out change_prop.# 05/16/90 7.5 $$1 James better space est. fixed dot in dir path problem.# for hp3/7 use bdf not df.# 08/05/90 7.6 $$2 James import_mode. Pro/PROJ commands for 8.0 & conv.# 09/11/90 7.7 $$3 James Fixed 1st pass for local prj_name conv.# 09/18/91 8.0 $$4 James Allowed for MISC & CHANGE DIR# 09/19/91 8.1 $$5 James Fix hang on bad config file. A0-4 papersizes.# mult. modes, avoid 8.0 project file. -ps for 7.0# only (undoc).# 05/09/92 8.2 $$6 James sgi_r4k. Added globbing around top2lines.# m88k# 08/20/93 8.3 $$7 James sun4_solaris; removed old machines, added alpha_unix.# 10/15/93 8.4 $$8 James sun4_solaris fix.# 12/08/93 12.0 $$9 James Added hitachi.# 05/11/94 12.1 $$10 James Fixed nonoline for sun4_solaris, STORE->SAVE at 13.0# 09/15/95 16.0 $$11 Harry changed gfxnum from 7 to 0 for sgi machines# 10/10/95 16.0 $$12 Harry changed df command from "/bin/df" to "/bin/df -k" # for sun4_solaris.# 05/10/96 17.0 16.0 $$13 Jane overwritten "trail_dir" in config.pro in home dir.# 05/17/96 17.0 16.0 $$14 Jane added sgi_elf2. # 06/10/96 17.0 $$15 Harry Changed fcol from "r" to "4" for alpha_unix# 07/14/98 20.0 $$16 ZRL Added hp8k# 05/23/00 I-03-29 JJE Added sgi_mips4# 04/11/01 I-03-39 $$17 TWH support trail_dir in config.sup# 10/27/02 J-03-36 $$18 Vaza Support of "Save" for j0151 and j0336.# 05/30/03 K-01-08 $$19 Vaza Added conf. opt. "import_in_file_open no".set name="$0"set name="$name:t"set script_vers="12.1"set pid="$$"set arglist=( $* )set initialdir="$cwd"unset full_modeunset import_modeunset cvt8_modeif ($?PRO_CVTMODE) then switch ($PRO_CVTMODE) case import set import_mode set name="proigsutil" breaksw case cvtprj8 set cvt8_mode set name="proprjcvt" breaksw default echo "ERROR: $PRO_CVTMODE - unrecognised mode." exit 1 breaksw endswelse set full_modeendif# UTILITY DEFNS# prjutil allows removal and insertion of the project info header on# objects 'submit'ted under a project - this info makes object # unreadable unless it is first 'fetched'.set prjutil = "procvtutil"set prjutil_usage = "3"set prjutil_noaction = "2"set prjutil_bad = "1"set prjutil_good = "0"# BANNERset lm="14"set greeting="$name v$script_vers - the Pro/ENGINEER conversion utility"set numscores=`echo "$greeting" | wc -c`@ numscores--echo ""echo ""repeat $lm echo -n " "; echo "$greeting"repeat $lm echo -n " "; repeat $numscores echo -n "-"echo ""echo ""# CHECK THE MACHINE TYPE AND UTILITIESset mc_type=""if ($?PRO_MACHINE_TYPE != 0 ) then set mc_type=$PRO_MACHINE_TYPEendifgoto MACHINE_CONFIGMACHINE_CONFIG_DONE:if (! $?import_mode) thenunset prjutil_existsif ($?use_which) then set which_ret=`which $prjutil` set whichline=`echo "$whichline_tmp" | sed s/__CMD__/$prjutil/` if (`echo "$which_ret" | egrep "$whichline" | wc -l` == 0) set prjutil_existselse $prjutil >& /dev/null if ($status == $prjutil_usage) set prjutil_existsendifif (! $?prjutil_exists) then echo "" repeat $lm echo -n " "; echo "WARNING: $name utility file '$prjutil' not accessable." repeat $lm echo -n " "; echo "Please check installation of $name." repeat $lm echo -n " "; echo "If you continue, any files submitted under projects" repeat $lm echo -n " "; echo "will not be converted." if ($#arglist < 1) then echo "" repeat $lm echo -n " "; echo -n "Do you really want to continue (y/n) [y] ?: " set ans="$<" echo "" if ("$ans" =~ n* || "$ans" =~ N*) exit 1 endifendifendif# Variables usefull for both input modesset size_choice=" A B C D E F A0 A1 A2 A3 A4 "if ($#arglist < 1) then ### CONVERSATIONAL INPUT MODE ###set unsetdir_val="/dev/null/undefined"echo ""echo " Interactive mode - you will be prompted for answers, hit <RETURN>"echo " to get default values in []'s when available."echo ""echo " Use '$name -help' for more information, including command-line arguments."echo ""echo ""set bad_procmdwhile ($?bad_procmd) echo -n "Name of command to run Pro/ENGINEER ?: " set procmd="$<" if ("$procmd" == "") continue set raw_procmd="$procmd" if ($?use_which) then set procmd=`which $procmd |& tail -1` if (-x "$procmd") unset bad_procmd else set procmd="/bin/$procmd" if (-x "$procmd") unset bad_procmd endif if ($?bad_procmd) then echo "" echo "ERROR: '$raw_procmd' - no such command" echo "" endifendecho ""# set proe_lp to point to the install directory# used later to check config.supset fullprocmdname=`ls -l $procmd | awk '{print $NF}'`set t_procmdname="$fullprocmdname:t"set h_procmdname="$fullprocmdname:h"set proe_lpif ($h_procmdname == $t_procmdname) then set proe_lp="$cwd:h"else pushd $h_procmdname set proe_lp="$cwd:h" popdendifunset h_procmdnameunset t_procmdnameunset fullprocmdnameset def="drw"set impfmt=""set choice=" drw prt "while ($?import_mode && `echo "$choice" | grep " $impfmt " | wc -l` == 0) echo "Convert to parts or drawings (choice: $choice)" echo -n "[$def] ?: " set impfmt="$<" set impfmt=`echo "$impfmt" | tr \[A-Z\] \[a-z\] | tr -d ' '` if ("$impfmt" == "") set impfmt="$def" echo ""end# Next undocumented variable is only avail in param mode - for 7.0 only.set papersize=""set def="igs"set impext=""while ($?import_mode &&"$impext" == "") echo "Import file extension" echo -n "[$def] ?: " set impext="$<" set impext=`echo "$impext" | tr \[A-Z\] \[a-z\] | tr -d ' '` if ("$impext" == "") set impext="$def" echo ""endset def="no"set prjreply=""if ($?cvt8_mode) set prjreply="yes"set choice=" yes no "while (`echo "$choice" | grep " $prjreply " | wc -l` == 0 && ! $?import_mode) echo "Do you wish to convert a project to Release 8.0 (choice: $choice)" echo -n "[$def] ?: " set prjreply="$<" set prjreply=`echo "$prjreply" | tr \[A-Z\] \[a-z\] | tr -d ' '` if ("$prjreply" == "") set prjreply="$def" if ("$prjreply" =~ y*) set prjreply="yes" if ("$prjreply" =~ n*) set prjreply="no" echo ""endset prj_conv=""if ("$prjreply" == "yes") then unset valid_prjconv while (! $?valid_prjconv) echo "What is the project name" echo -n "?: " set prj_conv="$<" set prj_conv=`echo "$prj_conv" | tr \[A-Z\] \[a-z\] | tr -d ' '` set valid_prjconv echo "" endendifset def="no"set prjreply=""set choice=" yes no "while (`echo "$choice" | grep " $prjreply " | wc -l` == 0 && ! $?import_mode && "$prj_conv" == "") echo "Do you wish to convert Pro/PROJECT files (choice: $choice)" echo -n "[$def] ?: " set prjreply="$<" set prjreply=`echo "$prjreply" | tr \[A-Z\] \[a-z\] | tr -d ' '` if ("$prjreply" == "") set prjreply="$def" if ("$prjreply" =~ y*) set prjreply="yes" if ("$prjreply" =~ n*) set prjreply="no" echo ""endif ("$prjreply" == "yes") then set prjver="" set def="5.0" set choice=" 5.0 6.0+ " while (`echo "$choice" | grep " $prjver " | wc -l` == 0) echo "Converting FROM what version of Pro/ENGINEER (choice: $choice)" echo -n "[$def] ?: " set prjver="$<" set prjver=`echo "$prjver" | tr \[A-Z\] \[a-z\] | tr -d ' '` if ("$prjver" == "") set prjver="$def" if ("$prjver" == "5") set prjver="5.0" if ("$prjver" == "6") set prjver="6.0+" echo "" end if ("$prjver" == "5.0") then set prjdir="yes" set prj_name="" else set prjdir="no" set prj_name="" unset valid_prjname while (! $?valid_prjname) echo "What is the project name" echo -n "?: " set prj_name="$<" set prj_name=`echo "$prj_name" | tr \[A-Z\] \[a-z\] | tr -d ' '` set valid_prjname echo "" end endifelse if ("$prjreply" == "no") then set prj_name="" set prjdir="no"else set prj_name="" set prjdir=""endifset def="$cwd"set startdir="$unsetdir_val"while (! -d $startdir && "$prj_name" == "" && "$prj_conv" == "") echo "Name of directory containing files to convert" echo -n "[$def] ?: " set startdir="$<" if ("$startdir" == "") set startdir="$def" if (! -d $startdir) then echo "ERROR: directory does not exist - '$startdir'" endifendif ("$startdir" != "$unsetdir_val") then set startdir=`(cd $startdir; echo $cwd)` echo ""else set startdir=""endifset list=""unset valid_listwhile (! $?valid_list && "$prj_name" == "" && "$prj_conv" == "") echo "Name of file containing list of files to convert" echo -n "hit <RETURN> to convert all files ?: " set list="$<" if ("$list" == "") then set valid_list else if (! -e "$list") then echo "ERROR: file does not exist - '$list'" continue endif set valid_list echo ""endset descend=""if ("$list" == "" && "$prj_name" == "" && "$prj_conv" == "") then set def="no" set choice=" yes no " unset valid_ans while (`echo "$choice" | grep " $descend " | wc -l` == 0) echo "Recursively convert files in dirs encountered (choice: $choice)" echo -n "[$def] ?: " set descend="$<" set descend=`echo "$descend" | tr \[A-Z\] \[a-z\] | tr -d ' '` if ("$descend" == "") set descend="$def" if ("$descend" =~ y*) set descend="yes" if ("$descend" =~ n*) set descend="no" end echo ""endifset def="$startdir"set targetdir="$unsetdir_val"while (! -d $targetdir && "$prj_name" == "" && "$prj_conv" == "") echo "Name of directory in which to put converted files" echo -n "[$def] ?: " set targetdir="$<" if ("$targetdir" == "") set targetdir="$def" if (! -d "$targetdir") echo "ERROR: '$targetdir' does not exist"endif ("$targetdir" != "$unsetdir_val") then set targetdir=`(cd $targetdir; echo $cwd)` echo ""else set targetdir=""endifset geommode=""set def="nogeom"if ($?import_mode && "$impfmt" == "drw") set geommode="$def"set choice=" geom nogeom "while (`echo "$choice" | grep " $geommode " | wc -l` == 0 && "$prj_conv" == "") echo "Geometry mode (choice: $choice)" echo -n "[$def] ?: " set geommode="$<" if ("$geommode" == "") set geommode="$def" echo ""end# Fixedset storemode="long"if ("$prj_conv" != "") set storemode=""set def="no"set purgefiles=""set choice=" yes no "while (`echo "$choice" | grep " $purgefiles " | wc -l` == 0 && "$prj_name" == "" && ! $?import_mode && "$prj_conv" == "") echo "Purge each file after conversion (choice: $choice)" echo -n "[$def] ?: " set purgefiles="$<" set purgefiles=`echo "$purgefiles" | tr \[A-Z\] \[a-z\] | tr -d ' '` if ("$purgefiles" == "") set purgefiles="$def" if ("$purgefiles" =~ y*) set purgefiles="yes" if ("$purgefiles" =~ n*) set purgefiles="no" echo ""endset def="no"set forceconvert=""set choice=" yes no "while (`echo "$choice" | grep " $forceconvert " | wc -l` == 0 && ! $?import_mode && "$prj_conv" == "") echo "Force conversion of all files (choice: $choice)" echo -n "[$def] ?: " set forceconvert="$<" set forceconvert=`echo "$forceconvert" | tr \[A-Z\] \[a-z\] | tr -d ' '` if ("$forceconvert" == "") set forceconvert="$def" if ("$forceconvert" =~ y*) set forceconvert="yes" if ("$forceconvert" =~ n*) set forceconvert="no" echo ""endset killdelay=""
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?