[an error occurred while processing this directive]

HP OpenVMS Systems Documentation

Content starts here

HP OpenVMS DCL Dictionary


Previous Contents Index


SEARCH

Searches one or more files for the specified strings and displays the lines containing those strings.

Format

SEARCH filespec[,...] search-string[,...]


Parameters

filespec[,...]

Specifies one or more files to be searched. You must specify at least one file name. If you specify more than one file name, separate the file specifications with commas (,).

You can use the asterisk (*) and the percent sign (%) wildcard characters in the file specification.

search-string[,...]

Specifies the character string to be located in the specified files. Enclose strings containing lowercase letters, blanks, or other nonalphanumeric characters (including spaces) in quotation marks (" ").

You can use the /MATCH and /EXACT qualifiers to alter the way that SEARCH matches search strings.


Description

The SEARCH command searches through files for specific character strings; all lines containing occurrences of the strings are displayed. Use the SEARCH qualifiers to tailor the search operation to your specific needs.

The SEARCH command opens the file with shared read (R) and write (W) access. Therefore, any file that has its attributes set to shared write is searched even if it is currently opened by other users.


Qualifiers

/BACKUP

Modifies the time value specified with the /BEFORE or the /SINCE qualifier. The /BACKUP qualifier selects files according to the dates of their most recent backups. This qualifier is incompatible with the /CREATED, /EXPIRED, and /MODIFIED qualifiers, which also allow you to select files according to time attributes. If you specify none of these four time qualifiers, the default is the /CREATED qualifier.

/BEFORE[=time]

Selects only those files dated prior to the specified time. You can specify time as absolute time, as a combination of absolute and delta times, or as one of the following keywords: BOOT, LOGIN, TODAY (default), TOMORROW, or YESTERDAY. Specify one of the following qualifiers with the /BEFORE qualifier to indicate the time attribute to be used as the basis for selection: /BACKUP, /CREATED (default), /EXPIRED, or /MODIFIED.

For complete information on specifying time values, see the OpenVMS User's Manual or the online help topic Date.

/BY_OWNER[=uic]

Selects only those files whose owner user identification code (UIC) matches the specified owner UIC. The default UIC is that of the current process.

Specify the UIC by using standard UIC format as described in the OpenVMS User's Manual.

/CONFIRM

/NOCONFIRM (default)

Controls whether a request is issued before each search operation to confirm that the operation should be performed on that file. The following responses are valid:
YES NO QUIT
TRUE FALSE Ctrl/Z
1 0 ALL
  [Return]  

You can use any combination of uppercase and lowercase letters for word responses. Word responses can be abbreviated to one or more letters (for example, T, TR, or TRU for TRUE), but these abbreviations must be unique. Affirmative answers are YES, TRUE, and 1. Negative answers include: NO, FALSE, 0, and pressing Return. Entering QUIT or pressing Ctrl/Z indicates that you want to stop processing the command at that point. When you respond by entering ALL, the command continues to process, but no further prompts are given. If you type a response other than one of those in the list, DCL issues an error message and redisplays the prompt.

/CREATED (default)

Modifies the time value specified with the /BEFORE or the /SINCE qualifier. The /CREATED qualifier selects files based on their dates of creation. This qualifier is incompatible with the /BACKUP, /EXPIRED, and /MODIFIED qualifiers, which also allow you to select files according to time attributes. If you specify none of these four time qualifiers, the default is the /CREATED qualifier.

/EXACT

/NOEXACT (default)

Controls whether the SEARCH command matches the search string exactly or treats uppercase and lowercase letters as equivalents. By default, SEARCH ignores case differences in letters.

Specifying the /EXACT qualifier causes the system to use less CPU time; therefore, if you are sure of the case of the letters in the string, it is more efficient to use the /EXACT qualifier.

/EXCLUDE=(filespec[,...])

Excludes the specified files from the search operation. You can include a directory but not a device in the file specification. The asterisk (*) and the percent sign (%) wildcard characters are allowed in the file specification; however, you cannot use relative version numbers to exclude a specific version. If you specify only one file, you can omit the parentheses.

/EXPIRED

Modifies the time value specified with the /BEFORE or the /SINCE qualifier. The /EXPIRED qualifier selects files according to their expiration dates. (The expiration date is set with the SET FILE/EXPIRATION_DATE command.) The /EXPIRED qualifier is incompatible with the /BACKUP, /CREATED, and /MODIFIED qualifiers, which also allow you to select files according to time attributes. If you specify none of these four time qualifiers, the default is the /CREATED qualifier.

/FORMAT=option

Formats output in one of the following five ways:
DUMP Displays all control characters (including <HT>, <CR>, and <LF>) and nonprintable characters as ANSI mnemonics.
NOFF Replaces control characters in text with ANSI mnemonics (for example, Ctrl/C is replaced with <ETX>). The terminal formatting characters <HT>, <CR>, <LF>, <VT> are passed without change. Form feed characters are replaced with <FF>.
NONULLS Same as DUMP, but removes all null characters from the input file before reformatting. (In dump mode, the null character is displayed as <NUL>.) NONULLS is convenient when you are searching binary format files, such as EXE or OBJ files, that generally contain many zero bytes.
PASSALL Moves control and nonprintable characters to the output device without translating them. The terminal driver cannot send 8-bit characters to the terminal unless SET TERMINAL/EIGHT_BIT is already in effect.

You can use /FORMAT=PASSALL whenever you do not want the SEARCH command to substitute the ANSI mnemonic for control characters (for example, <BEL> for Ctrl/G).

TEXT Replaces control characters in text with ANSI mnemonics (for example, Ctrl/C is replaced with <ETX>). The terminal formatting characters <HT>, <CR>, <LF>, <VT>, and <FF> are passed without change. TEXT is the default format.

/HEADING (default)

/NOHEADING

Includes file names in the output file and displays a line of 30 asterisks(*) as a window separator between groups of lines that belong to different files. With the default heading format, file names are printed only when more than one file is specified or when the asterisk (*) and the percent sign (%) wildcard characters are used.

The /WINDOW qualifier displays a line of 15 asterisks to separate each window within a file.

/HIGHLIGHT[=keyword] (default)

/NOHIGHLIGHT

You can use one of the following keywords: BOLD, BLINK, REVERSE, and UNDERLINE. BOLD is the default highlighting on ANSI video terminals with advanced video; REVERSE is the default highlighting on ANSI video terminals without advanced video.

For hardcopy printing, you can use the HARDCOPY=OVERSTRIKE and HARDCOPY=UNDERLINE keywords. This specifies that the strings should be highlighted in a manner suitable for most hardcopy printers. With overstrike highlighting, matched strings are double-printed, so that they appear darker. The matched strings are underlined with the underscore character.

Hardcopy printing is accomplished by adding a carriage return and spacing back over the line to overprint the string or underlines. Note that this can as much as double the length of the line, and perhaps lead to truncation if the device buffer size is too small.

HP recommends that you use the /HIGHLIGHT=UNDERLINE qualifier with the LN01 printer rather than using the /HIGHLIGHT=HARDCOPY=UNDERLINE qualifier. The LN01 printer ignores OVERSTRIKE highlighting.

HP recommends that you use either the /HIGHLIGHT=BOLD or the /HIGHLIGHT=UNDERLINE qualifier with the LN03 printer rather than using the /HIGHLIGHT=HARDCOPY=UNDERLINE qualifier. The LN03 printer ignores OVERSTRIKE highlighting.

Note

You cannot specify /WILDCARD_MATCHING with /HIGHLIGHT. An error will occur.

/KEY=(POSITION=n,SIZE=n)

Searches the records of a file (beginning at the specified position) for the length of the specified size.

You can specify the POSITION keyword value as 1 to 32,767. The first byte in a record is considered position 1.

Note

The /KEY qualifier must appear before the file name, or after the specified search string. If the qualifier is placed between these parameters, it is ignored.

/LIMIT=n (Alpha/I64 Only)

Limits the number of matches displayed to the number specified by n.

/LOG

/NOLOG (default)

Outputs a message to the current SYS$OUTPUT device for each file searched. The message includes the file name, the number of records, and the number of matches for each file searched.

/MATCH=option

Interprets and matches multiple search strings in one of the following ways:
AND A match occurs only if the record contains all the strings.
EQV A match occurs if none or all of the search strings are in the record.
NOR A match occurs only if the record contains none of the strings.
NAND A match occurs only if the record does not contain all of the strings.
OR A match occurs if the record contains any of the strings.
XOR A match occurs if any of the search strings are in the record but not if all or none of them are in the record.

When only one search string is specified, the OR and AND options produce identical results. Similarly, NOR and NAND produce identical results for a single search string. If you specify none of these options, the default is /MATCH=OR.

/MODIFIED

Modifies the time value specified with the /BEFORE or the /SINCE qualifier. The /MODIFIED qualifier selects files according to the dates on which they were last modified. This qualifier is incompatible with the /BACKUP, /CREATED, and /EXPIRED qualifiers, which also allow you to select files according to time attributes. If you specify none of these four time modifiers, the default is the /CREATED qualifier.

/NUMBERS

/NONUMBERS (default)

Controls whether the source line number is displayed at the left margin of each line in the output.

/OUTPUT[=filespec]

/NOOUTPUT

Controls whether the results of the search are output to a specified file. The output is sent to the current default output device (SYS$OUTPUT) if you omit the /OUTPUT qualifier or omit the file specification with the qualifier. The /NOOUTPUT qualifier means that no matching records are output as a result of the SEARCH command.

/PAGE[=keyword]

/NOPAGE (default)

Controls the display of information on the screen.

You can use the following keywords with the /PAGE qualifier:

CLEAR_SCREEN Displays information one page at a time.
SCROLL Displays information on a continuous stream.
SAVE[= n] Enables screen navigation of information, where n is the number of pages to store.

The /PAGE=SAVE qualifier allows you to navigate through screens of information. The /PAGE=SAVE qualifier stores up to 5 screens of up to 255 columns of information. When you use the /PAGE=SAVE qualifier, you can use the following keys to navigate through the information:

Key Sequence Description
Up arrow key, Ctrl/B Scroll up one line.
Down arrow key Scroll down one line.
Left arrow key Scroll left one column.
Right arrow key Scroll right one column.
Insert Here (E2) Scroll right one half screen.
Remove (E3) Scroll left one half screen.
Select (E4) Toggle 80/132 column mode.
Prev Screen (E5) Get the previous page of information.
Next Screen (E6), Return, Enter, Space Get the next page of information.
F10, Ctrl/Z Exit. (Some utilities define these differently.)
Help (F15) Display utility help text.
Do (F16) Toggle the display to oldest/newest page.
Ctrl/W Refresh the display.

The /PAGE qualifier is not compatible with the /OUTPUT qualifier.

/REMAINING

/NOREMAINING (default)

Includes in the output all records from the first matched record to the end of the file. This qualifier overrides the value n2 in the /WINDOW qualifier, but allows the qualifier /WINDOW=n1.

/SINCE[=time]

Selects only those files dated on or after the specified time. You can specify time as absolute time, as a combination of absolute and delta times, or as one of the following keywords: BOOT, LOGIN, TODAY (default), TOMORROW, or YESTERDAY. Specify one of the following qualifiers with the /SINCE qualifier to indicate the time attribute to be used as the basis for selection: /BACKUP, /CREATED (default), /EXPIRED, or /MODIFIED.

For complete information on specifying time values, refer to the OpenVMS User's Manual or the online help topic Date.

/SKIP=n (Alpha/I64 Only)

Skips the first n matches found before outputting match information.

/STATISTICS

/NOSTATISTICS (default)

Controls whether the following statistics about the search are displayed:
  • Number of files searched
  • Number of records searched
  • Number of characters searched
  • Number of records matched
  • Number of lines printed
  • Buffered I/O count
  • Direct I/O count
  • Number of page faults
  • Elapsed CPU time
  • Elapsed time

/STYLE=keyword

Specifies the file name format for display purposes.

The valid keywords for this qualifier are CONDENSED and EXPANDED. Descriptions are as follows:

Keyword Explanation
CONDENSED (default) Displays the file name representation of what is generated to fit into a 255-length character string. This file name may contain a DID or FID abbreviation in the file specification.
EXPANDED Displays the file name representation of what is stored on disk. This file name does not contain any DID or FID abbreviations.

The keywords CONDENSED and EXPANDED are mutually exclusive. This qualifier specifies which file name format is displayed in the output message, along with the confirmation if requested.

File errors are displayed with the CONDENSED file specification unless the EXPANDED keyword is specified.

Refer to the OpenVMS User's Manual for more information.

/WARNINGS (default)

/NOWARNINGS

Allows or disallows the following messages to be displayed when search operations are performed:
NOMATCHES
TRUNCATE
NULLFILE

/WILDCARD_MATCHING (Alpha/I64 Only)

Specifies that the following characters in the search string are to be interpreted as wildcard characters:
asterisk (*) --- Accept any number of unspecified characters in this position when searching for a match.

percent sign (%) --- Accept any single character in this position when searching for a match.

Note

You cannot specify /WILDCARD_MATCHING with /HIGHLIGHT. An error will occur.

/WINDOW[=(n1,n2)]

/NOWINDOW (default)

Specifies the number of lines to be displayed with the search string.

If you specify n1 and n2, the /WINDOW qualifier displays n1 lines above the search string, the search string, and n2 lines below the search string. Either of these numbers can be zero.

If you specify the /WINDOW qualifier without the values n1 and n2, two lines above the search string, the search string, and the two lines below the search string are included in the output.

If you specify the /WINDOW qualifier with a single number (n1), n1 specifies the number of lines to display including the search string. Half the lines precede the matched search string and half follow it. (If n1 is even, one line is added to the lines following the matched search string.)

For example, if you specify /WINDOW=10, nine additional lines are listed along with the line containing the search string. Four lines are listed above the line containing the search string and five lines are listed below it, for a total of 10 lines.

If you specify /WINDOW=0, the file name of each file containing a match (but no records) is included in the output. This specification creates a file (using the /OUTPUT qualifier) that can be inserted into a command file to manipulate the files containing matches.

If you omit the /WINDOW qualifier, only the line containing a match is displayed.

The /WINDOW qualifier displays a line of 30 asterisks to separate each window within a file.

/WRAP

/NOWRAP (default)

Use with the /PAGE=SAVE qualifier to limit the number of columns to the width of the screen and to wrap lines that extend beyond the width of the screen to the next line.

The /NOWRAP qualifier extends lines beyond the width of the screen and can be seen when you use the scrolling (left and right) features provided by the /PAGE=SAVE qualifier.


Examples

#1

$ SEARCH CABLE.MEM,JOYNER.MEM "MANUAL TITLE"
      

This command searches the files CABLE.MEM and JOYNER.MEM for occurrences of the character string MANUAL TITLE. Each line containing the string is displayed at the terminal. It is necessary to enclose the string in quotation marks because it contains a space character.

#2

$ SEARCH/OUTPUT=RESULTS.DAT/WINDOW=9 DISLIST.MEM NAME
      

The SEARCH command searches the file DISLIST.MEM for occurrences of the character string NAME and sends the output to the file RESULTS.DAT. The four lines preceding and following each occurrence of NAME are included in the output.

#3

$ SEARCH/OUTPUT=ALLSUB.COM/WINDOW=5000 *.COM SUBMIT
      

The SEARCH command searches all command files in the current directory for the string SUBMIT. If a match is found, SEARCH effectively copies the entire command file to the output file, because the window is so large.

#4

$ SEARCH/OUTPUT=COLUMBUS.OH/WINDOW=(3,0)/NOHEAD/MATCH=AND -
_$ *.DAT COLUMBUS,OH
      

The SEARCH command searches all files of type DAT for lines containing both COLUMBUS and OH. When a match is found, the three previous lines (containing blank line, name, and street address) are copied to the new file. The new file COLUMBUS.OH is ready to use, because it does not contain headings and window separators.

#5

$ SEARCH/OUTPUT=SWAP.LIS/FORMAT=PASSALL/NUMBERS/EXACT -
_$ /WINDOW=10000 SWAP.PAS SWAP
      

This SEARCH command produces a listing file with the line numbers at the left margin. The /FORMAT=PASSALL qualifier is specified so that form-feed characters in the source are passed through. The /EXACT qualifier is specified for efficiency (because it is known that the name SWAP in the program statement is always in uppercase). The /WINDOW qualifier is entered so that the entire file is copied to the output file SWAP.LIS.

#6

$ SEARCH/REMAINING CABLE.LOG FORTRAN
      

The SEARCH command displays all the lines in the CABLE.LOG file that follow the first occurrence of the string FORTRAN.

#7

$ SEARCH OMAHA::DISK1:[EXP]SUB.DAT,DATA.LIS VAX
      

The SEARCH command searches through the files SUB.DAT and DATA.LIS at remote node OMAHA for all occurrences of the string VAX. The list of all records containing the string VAX is displayed at the local terminal.


Previous Next Contents Index