Использование оператора -d test в perl - PullRequest
7 голосов
/ 23 июня 2011

Я перебираю чей-то старый код и наткнулся на это утверждение:

$tmpStr = "/some/file/location/";

if(-d $tmpStr){
   printf("1");
}else{
   printf("2");
}

Я запутался в том, что -d делает ... любую помощь?

Ответы [ 3 ]

15 голосов
/ 23 июня 2011

-d возвращает true, если следующая строка является каталогом.

См. -X в perlfunc .

5 голосов
/ 23 июня 2011

Проверяет, существует каталог или нет.Доступно еще много операций проверки файлов , например:

   1. -r File is readable by effective uid/gid.
   2. -w File is writable by effective uid/gid.
   3. -x File is executable by effective uid/gid.
   4. -o File is owned by effective uid.
   5.
   6. -R File is readable by real uid/gid.
   7. -W File is writable by real uid/gid.
   8. -X File is executable by real uid/gid.
   9. -O File is owned by real uid.
  10.
  11. -e File exists.
  12. -z File has zero size (is empty).
  13. -s File has nonzero size (returns size in bytes).
  14.
  15. -f File is a plain file.
  16. -d File is a directory.
  17. -l File is a symbolic link.
  18. -p File is a named pipe (FIFO), or Filehandle is a pipe.
  19. -S File is a socket.
  20. -b File is a block special file.
  21. -c File is a character special file.
  22. -t Filehandle is opened to a tty.
  23.
  24. -u File has setuid bit set.
  25. -g File has setgid bit set.
  26. -k File has sticky bit set.
  27.
  28. -T File is an ASCII text file (heuristic guess).
  29. -B File is a "binary" file (opposite of -T).
  30.
  31. -M Script start time minus file modification time, in days.
  32. -A Same for access time.
  33. -C Same for inode change time (Unix, may differ for other platforms)
1 голос
/ 23 июня 2011

Это проверяет, является ли этот путь каталогом.Это не сравнение строк.

Это сравнение строк.

"Hello" ne "world"
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...