⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 extractallfilesforcomponent

📁 CMVC是IBM和许多跨国公司的缺陷管理工具。这里给出了很多在Linux下用KSH编写的使用CMVC命令的例子。这些例子来自于IBM内部的CMVC培训。
💻
字号:
#!/usr/bin/ksh## SAMPLE NAME: extractAllFilesForComponent## FUNCTIONS:   This sample shell script extracts all the files #              associated with a specific component and places them in #              the path specified by the relativePathName parameter.#              If a file belongs to several releases, one version is#              extracted for each release, under a subdirectory that is#              named after the release.#              The versions of the files can be current (default) or committed.## USAGE: # extractAllFilesForComponent componentName relativePathName [current|committed]#                                                             *******# ENVIRONMENT VARIABLE(S): CMVC_FAMILY [CMVC_BECOME]## 5765-207 (C) COPYRIGHT International Business Machines Corp. 1993,1998# 5765-202 (C) COPYRIGHT International Business Machines Corp. 1993,1998# 5622-063 (C) COPYRIGHT International Business Machines Corp. 1993,1998# All Rights Reserved# Licensed Materials - Property of IBM## US Government Users Restricted Rights - Use, duplication or# disclosure restricted by GSA ADP Schedule Contract with IBM Corp.##           NOTICE TO USERS OF THE SOURCE CODE EXAMPLES## INTERNATIONAL BUSINESS MACHINES CORPORATION PROVIDES THE SOURCE CODE# EXAMPLES, BOTH INDIVIDUALLY AND AS ONE OR MORE GROUPS, "AS IS" WITHOUT# WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT# LIMITED TO THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A# PARTICULAR PURPOSE.  THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE# OF THE SOURCE CODE EXAMPLES, BOTH INDIVIDUALLY AND AS ONE OR MORE GROUPS,# IS WITH YOU.  SHOULD ANY PART OF THE SOURCE CODE EXAMPLES PROVE# DEFECTIVE, YOU (AND NOT IBM OR AN AUTHORIZED RISC System/6000* WORKSTATION# DEALER) ASSUME THE ENTIRE COST OF ALL NECESSARY SERVICING, REPAIR OR# CORRECTION.## * RISC System/6000 is a trademark of International Business Machines#   Corporation.## /usr/lpp/cmvc/samples/extractAllFilesForComponent## Validation of input parameters and environment variables.if [ $# -eq 0 ]then  print "usage: $0 componentName relativePathName [committed]"  print "This sample shell script extracts all the files associated"  print "with a specific component and places them in the path specified"  print "by the relativePathName parameter."  print "If a file belongs to several releases, one version is extracted for"  print "each release, under a subdirectory that is named after the release."  print "By default, the current version is extracted, unless"  print "the committed parameter is specified."  exit 1fiif [ -z "$CMVC_FAMILY" ]then  print "The CMVC family must be set with the CMVC_FAMILY environment variable."  exit 1fi#if [ $# -gt 3 ]then  print "Provide a componentName and a relativePathName"  print "as input parameters.\n"  exit 1ficomponentName=$1relative=$2if [ $# -eq 3 ]then  desiredVersion=$3  if [ "$desiredVersion" = "committed" ] || [ "$desiredVersion" = "current" ]  then    print ""     # no-op  else    print "The desired version should be either current (default) or committed"    exit 1  fielse  desiredVersion="current"fiprint "Multiple copies of a file may exist within a component with each"print "version of the file being owned by a separate release."print "As a result, a directory will be created for each release and the"print "files will be copied into their respective directories relative to"print "the relativePathName parameter that you have supplied."RELEASENAME=PATHNAME=SAVEPATHNAME=# Find out the committed files in a component and extract themReport -view FileView -where "compName='$componentName' and dropDate is null order by pathName" -raw > /tmp/cv$$while read linedo   RELEASENAME=`echo $line | cut -d'|' -f2 `   PATHNAME=`echo $line | cut -d'|' -f8 `   if [ "$desiredVersion" = "committed" ]    then     VERSION=`echo $line | cut -d'|' -f4 `     print "Extracting file: $PATHNAME committed version $VERSION release $RELEASENAME"   else     VERSION=`echo $line | cut -d'|' -f9 `     print "Extracting file: $PATHNAME current version $VERSION release $RELEASENAME"   fi   File -extract "$PATHNAME" -relative $relative/$RELEASENAME -release $RELEASENAME -version $VERSIONdone </tmp/cv$$# Cleanup the temporary file[ -r /tmp/cv$$ ] && rm -f /tmp/cv$$print "The extraction of the files is done!"exit 0### end of file ###

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -