system_isdir(3f) - [M_system:QUERY_FILE] checks if argument is a directory path (LICENSE:PD)
Synopsis
Description
Options
Return Value
Errors
See Also
Examples
elemental impure logical function system_isdir(pathname)
character(len=*),intent(in) :: pathname logical :: system_isdir
The system_isdir(3f) function checks if path is a directory.
path a character string representing a directory pathname. Trailing spaces are ignored.
The system_isdir() function should always be successful and no return value is reserved to indicate an error.
No errors are defined.
system_islnk(3f), system_stat(3f), isreg(3f), system_perm(3f)
Sample program
program demo_system_isdir use M_system, only : system_isdir use M_system, only : access=>system_access, R_OK use M_system, only : system_dir implicit none character(len=:),allocatable :: fnames(:) integer :: i character(len=80),parameter :: names(*)=[ & & /tmp , & & /tmp/NOTTHERE , & & /usr/local , & & . , & & PROBABLY_NOT ] ! do i=1,size(names) write(*,*) is ,trim(names(i)), a directory? , & & system_isdir(names(i)) enddo ! ! EXTENDED EXAMPLE: list readable non-hidden directories in ! current directory fnames=system_dir(pattern=*) ! list all files in current directory ! select readable directories fnames=pack(fnames,system_isdir(fnames).and.access(fnames,R_OK)) fnames=pack(fnames,fnames(:)(1:1) .ne..) ! skip hidden directories do i=1,size(fnames) write(*,*) ,trim(fnames(i)), is a directory enddo ! end program demo_system_isdirResults:
is /tmp a directory? T is /tmp/NOTTHERE a directory? F is /usr/local a directory? T is . a directory? T is PROBABLY_NOT a directory? FTEST is a directory EXAMPLE is a directory
Nemo Release 3.1 | system_isdir (3m_system) | March 07, 2025 |