Schrift
[thread]6270[/thread]

Datei oder Verzeichnis



<< >> 9 Einträge, 1 Seite
Knuddlbaer
 2004-05-18 19:05
#82513 #82513
User since
2004-04-13
32 Artikel
BenutzerIn
[default_avatar]
Wie kann ich zuverlässig prüfen ob ich eine Datei oder ein verzeichnis habe wenn mir z.B. jemand ~/mytest/test liefert ?!


thx
ptk
 2004-05-18 19:08
#82514 #82514
User since
2003-11-28
3645 Artikel
ModeratorIn
[default_avatar]
Mit -f oder -d. Die Tilde-Expansion musst du vorher haendisch ausfuehren, also (grobe Loesung, besser waere die Verwendung von getpwuid, ausserdem wird ~user nicht expandiert):
Code: (dl )
$file =~ s{^~/}{$ENV{HOME}/}
pktm
 2004-05-18 19:09
#82515 #82515
User since
2003-08-07
2921 Artikel
BenutzerIn
[Homepage]
user image
if( -f $dingens ){ print "Verzeichnis existiert"; }
Wenn mich jetzt mein Gedächtnis nicht täuscht prüft -f auf ein Verzeichnis.
-e im übrigen auf Verzeichnis oder Datei (also ob sie / es existiert).
http://www.intergastro-service.de (mein erstes CMS :) )
ptk
 2004-05-18 20:06
#82516 #82516
User since
2003-11-28
3645 Artikel
ModeratorIn
[default_avatar]
[quote=pktm,18.May.2004, 17:09]if( -f $dingens ){ print "Verzeichnis existiert"; }
Wenn mich jetzt mein Gedächtnis nicht täuscht prüft -f auf ein Verzeichnis.
-e im übrigen auf Verzeichnis oder Datei (also ob sie / es existiert).[/quote]
f wie Ferzeichnis? Oder eher f wie file? :-)
alexus-777
 2004-05-18 20:13
#82517 #82517
User since
2004-04-13
121 Artikel
BenutzerIn
[default_avatar]
print "File existiert" if (-f $dingens && -e $dingens);
print "Dir exitstiert" if (-d $dingens && -e $dingens);

Vielleicht so?
Netspider
 2004-05-18 20:20
#82518 #82518
User since
2003-09-25
49 Artikel
BenutzerIn
[Homepage] [default_avatar]
[quote=ptk,18.05.2004, 18:06]f wie Ferzeichnis? Oder eher f wie file? :-)[/quote]
f hätte ja auch folder sein können ;-)
und d datei *g*

Perldoc perlfunc:
Code: (dl )
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
                -r  File is readable by effective uid/gid.
-w File is writable by effective uid/gid.
-x File is executable by effective uid/gid.
-o File is owned by effective uid.

-R File is readable by real uid/gid.
-W File is writable by real uid/gid.
-X File is executable by real uid/gid.
-O File is owned by real uid.

-e File exists.
-z File has zero size (is empty).
-s File has nonzero size (returns size in bytes).

-f File is a plain file.
-d File is a directory.
-l File is a symbolic link.
-p File is a named pipe (FIFO), or Filehandle is a pipe.
-S File is a socket.
-b File is a block special file.
-c File is a character special file.
-t Filehandle is opened to a tty.

-u File has setuid bit set.
-g File has setgid bit set.
-k File has sticky bit set.

-T File is an ASCII text file.
-B File is a "binary" file (opposite of -T).

-M Age of file in days when script started.
-A Same for access time.
-C Same for inode change time.
perl -e "s;;Ronny Lindner;;m;(..).$;;$l=$1;s;n;;g;m;.{4}$;;$_=$l;$I=$&;m;^(.);;$_.='ts';$_.=$1;$_++;$_++;$_.=$I;print ucfirst;"
Knuddlbaer
 2004-05-19 03:01
#82519 #82519
User since
2004-04-13
32 Artikel
BenutzerIn
[default_avatar]
Vielen Dank :o)
root
 2004-08-15 22:03
#82520 #82520
User since
2003-08-15
120 Artikel
BenutzerIn
[default_avatar]
genau diese Tabelle habe ich gesucht! :-)\n\n

<!--EDIT|root|1092594004-->
jan
 2004-08-16 01:18
#82521 #82521
User since
2003-08-04
2536 Artikel
ModeratorIn
[Homepage] [default_avatar]
nur der vollständigkeit halber:
print "File existiert" if (-f $dingens && -e $dingens);
print "Dir exitstiert" if (-d $dingens && -e $dingens);

ist imho doppelt gemoppelt, -f bzw -d prüfen auch auf existenz, das -e ist also überflüssig.
<< >> 9 Einträge, 1 Seite



View all threads created 2004-05-18 19:05.