HPlogo   HP 3000 Computer Systems: MPE/iX Architected Interface Facility:
Operating System Reference Manual
> Appendix C Programming Examples

Example 6 - HFS directory traversal

MPE documents

Complete PDF

 

Table of Contents

Index

 

⇓ Page Bottom

SYSWIDE Program

⇑ Page Top

 

Example 5 - Retrieving HFS pathnames

Example 7 - Using Magneto-Optical AIFs

Directory Traversal Examples

The following examples illustrate various pathnames you can specify as input to AIFSYSWIDEGET and the format of the names you will receive as output from AIFSYSWIDEGET. The examples assume the following directory structure.

 Level 1                                  /

            +-------------+-------------+-------------+-----------+
            |             |             |             |           |
 Level 2  3000devs  . .  SYS         SYSUTIL      TELESUP  . .   TEST
                                        |
                               +--------------+
                               |              |
 Level 3                     MPEXL          POSIX
                               |              |
                               +-A1002TST     +-tstdir
                               +-CLKPROG        |
                               +-DISCUTIL       +-this_is_another_dir
                               +-DTSINFO        |           |
                               +-IOMACS         +-tstfile   |
                               +-KSCHKXL                 +-----+
                               +-LIFUTIL                 |     |
                               +-MIRCHECK                f1    f2
                               +-MIRRDOC
                               +-SYSWIDEP
                               +-TBLMON
                               +-UTILTRK1
                               +-VSMMAP
                               +-tools_directory
                                       |
                              +------------------+
                              |                  |
                        mpe_tools_dir       unix_tools_dir
                              |                  |
                              +-flutil           +-grep
                              +-fstool           +-vi
  

Absolute Pathnames With Recursion

The following three examples illustrate the absolute pathnames that would be returned by AIFSYSWIDEGET if an absolute pathname was specified as the fileset for item 5036. Assume that SYSWIDEP is a program which calls AIFSYSWIDEGET and passes in the recursion level input by the user as item 5041.

 :CHGROUP MPEXL
 :RUN SYSWIDEP

 Path? >/SYSUTIL/MPEXL/@
 Recursion level? >99

 /SYSUTIL/MPEXL/A1002TST                                  
 /SYSUTIL/MPEXL/CLKPROG                                  
 /SYSUTIL/MPEXL/DISCUTIL                               
 /SYSUTIL/MPEXL/DTSINFO                               
 /SYSUTIL/MPEXL/IOMACS                               
 /SYSUTIL/MPEXL/KSCHKXL                           
 /SYSUTIL/MPEXL/LIFUTIL                               
 /SYSUTIL/MPEXL/MIRCHECK                            
 /SYSUTIL/MPEXL/MIRRDOC                           
 /SYSUTIL/MPEXL/SYSWIDEP                        
 /SYSUTIL/MPEXL/TBLMON                        
 /SYSUTIL/MPEXL/UTILTRK1              
 /SYSUTIL/MPEXL/VSMMAP                                   
 /SYSUTIL/MPEXL/tools_directory                         
 /SYSUTIL/MPEXL/tools_directory/.                      
 /SYSUTIL/MPEXL/tools_directory/..                    
 /SYSUTIL/MPEXL/tools_directory/mpe_tools_dir            
 /SYSUTIL/MPEXL/tools_directory/mpe_tools_dir/.       
 /SYSUTIL/MPEXL/tools_directory/mpe_tools_dir/..     
 /SYSUTIL/MPEXL/tools_directory/mpe_tools_dir/flutil
 /SYSUTIL/MPEXL/tools_directory/mpe_tools_dir/fstool
 /SYSUTIL/MPEXL/tools_directory/unix_tools_dir     
 /SYSUTIL/MPEXL/tools_directory/unix_tools_dir/.  
 /SYSUTIL/MPEXL/tools_directory/unix_tools_dir/..
 /SYSUTIL/MPEXL/tools_directory/unix_tools_dir/grep   
 /SYSUTIL/MPEXL/tools_directory/unix_tools_dir/vi    
 END OF PROGRAM                                     




 :RUN SYSWIDEP

 Path? >/SYSUTIL/@/@dir@
 Recursion level? >99
 /SYSUTIL/MPEXL/tools_directory                    
 /SYSUTIL/MPEXL/tools_directory/.                 
 /SYSUTIL/MPEXL/tools_directory/..               
 /SYSUTIL/MPEXL/tools_directory/mpe_tools_dir   
 /SYSUTIL/MPEXL/tools_directory/mpe_tools_dir/.
 /SYSUTIL/MPEXL/tools_directory/mpe_tools_dir/..         
 /SYSUTIL/MPEXL/tools_directory/mpe_tools_dir/flutil    
 /SYSUTIL/MPEXL/tools_directory/mpe_tools_dir/fstool   
 /SYSUTIL/MPEXL/tools_directory/unix_tools_dir        
 /SYSUTIL/MPEXL/tools_directory/unix_tools_dir/.     
 /SYSUTIL/MPEXL/tools_directory/unix_tools_dir/..   
 /SYSUTIL/MPEXL/tools_directory/unix_tools_dir/grep
 /SYSUTIL/MPEXL/tools_directory/unix_tools_dir/vi      
 /SYSUTIL/POSIX/tstdir                                
 /SYSUTIL/POSIX/tstdir/.                             
 /SYSUTIL/POSIX/tstdir/..                           
 /SYSUTIL/POSIX/tstdir/this_is_another_dir         
 /SYSUTIL/POSIX/tstdir/this_is_another_dir/.      
 /SYSUTIL/POSIX/tstdir/this_is_another_dir/..    
 /SYSUTIL/POSIX/tstdir/this_is_another_dir/f1   
 /SYSUTIL/POSIX/tstdir/this_is_another_dir/f2         
 /SYSUTIL/POSIX/tstdir/tstfile                       
 END OF PROGRAM                                     


 :RUN SYSWIDEP

 Path? >/SYSUTIL/@/@dir@/@/f@
 Recursion level? >99

 /SYSUTIL/MPEXL/tools_directory/mpe_tools_dir/flutil      
 /SYSUTIL/MPEXL/tools_directory/mpe_tools_dir/fstool     
 /SYSUTIL/POSIX/tstdir/this_is_another_dir/f1           
 /SYSUTIL/POSIX/tstdir/this_is_another_dir/f2          
 END OF PROGRAM                                       
  

Pathnames Relative to CWD With No Recursion

The following three examples illustrate the relative pathnames that would be returned by AIFSYSWIDEGET if a relative pathname was specified as the fileset for item 5036.

 :RUN SYSWIDEP

 Path? >./@
 Recursion level? >0

 ./A1002TST                                     
 ./CLKPROG                                     
 ./DISCUTIL                                   
 ./DTSINFO                                   
 ./IOMACS                                   
 ./KSCHKXL                                 
 ./LIFUTIL                                
 ./MIRCHECK                              
 ./MIRRDOC                              
 ./SYSWIDEP                                        
 ./TBLMON                                         
 ./UTILTRK1                                      
 ./VSMMAP                                       
 ./tools_directory                             
 END OF PROGRAM                               

 :CHDIR /SYSUTIL/MPEXL/tools_directory

 :RUN SYSWIDEP.MPEXL

 Path? >./@
 Recursion level? >0

 ./.                                         
 ./..                                       
 ./mpe_tools_dir                           
 ./unix_tools_dir                         
 END OF PROGRAM                          

 :RUN SYSWIDEP.MPEXL

 Path? >./@
 Recursion level? >99

 ./.                                    
 ./.                                   
 ./..                                 
 ./mpe_tools_dir                     
 ./mpe_tools_dir/.                  
 ./mpe_tools_dir/..                
 ./mpe_tools_dir/flutil           
 ./mpe_tools_dir/fstool          
 ./unix_tools_dir               
 ./unix_tools_dir/.            
 ./unix_tools_dir/..                                 
 ./unix_tools_dir/grep                              
 ./unix_tools_dir/vi                               
 END OF PROGRAM                                   
  

What Are '.' and '..' Files?

File names represented by a dot (.) or two dots (..) are directory files which in the above example represent the current directory and the parent of the current directory respectively. The current directory or the parent directory may refer to an HFS directory file or to an MPE directory node (for example, $FILESET_NODE, $GROUP_NODE).

For example, using the directory structure shown above, the following files refer to MPE directory structures:

 /SYSUTIL/MPEXL/.                  <- refers to
                                          $FILESET_NODE.MPEXL.SYSUTIL
 /SYSUTIL/MPEXL/tools_directory/.. <- refers to
                                          $FILESET_NODE.MPEXL.SYSUTIL
  
These files are not shown by a LISTFILE command, but they are returned by AIFSYSWIDEGET.

SYSWIDE Program

[3kRanger] Here is modified HFSPATH.pas to create SYSWIDE.pas.
View in Browser   Output Example

Example 5 - Retrieving HFS pathnames

Example 7 - Using Magneto-Optical AIFs