Schrift
[thread]12285[/thread]

Verzeichnisse



<< >> 3 Einträge, 1 Seite
ekos
 2008-08-01 15:54
#112989 #112989
User since
2008-07-23
7 Artikel
BenutzerIn
[default_avatar]
Hallo alle zusammen,

kann mir jemand erklären, wie ich rauskriege in welchem Verzeichnis ein Perl-Programm von der Kommandozeile aus aufgerufen wurde?

Und wie ich es hinkriege, dass wenn ich versuche ein File zu laden welches nicht vorhanden ist keine Fehlemeldung geschmissen wird, sondern das Program einfach weiterläuft?
pktm
 2008-08-01 16:03
#112991 #112991
User since
2003-08-07
2921 Artikel
BenutzerIn
[Homepage]
user image
Bei ersterem kann ich dir nicht helfen.

Mit
Code: (dl )
1
2
3
use FindBin qw/$Bin/;

print $Bin;


kannst du dir ausgeben lassen wo das Skript liegt, welches aufgerufen wurde.

Aber zu deiner 2. Frage kann ich dir helfen.

Wenn du eine Datei öffnest kannst du Fehler abfangen. Dieses Abfangen kannst du auch für die robuste Programmierung nutzen, bei der du einfach weiter machst.
Das geht natürlich nur, wenn du den Inhalt der Datei nicht brauchst.
Hier ein Beispiel:
Code: (dl )
1
2
3
4
5
6
7
8
9
10
11
    use FileHandle;

my $fh = new FileHandle;
my $file = "test.datei";
if ($fh->open("< $file")) {
print $fh->getline();
$fh->close();
}else{
# hier kommst du hin, wenn die Datei nicht geöffnet werden konnte.
# normalerweise steht dann sowas wie die "cannot open file: " . $!; hier
}
http://www.intergastro-service.de (mein erstes CMS :) )
GwenDragon
 2008-08-01 16:05
#112992 #112992
User since
2005-01-17
14532 Artikel
Admin1
[Homepage]
user image
Code: (dl )
1
2
3
4
5
use strict;
use warnings;
use Cwd;
my $dir = getcwd;
print "Startverzeichnis ist: $dir", "\n";
die Drachin, Gwendolyn


Unterschiedliche Perl-Versionen auf Windows (fast wie perlbrew) • Meine Perl-Artikel

<< >> 3 Einträge, 1 Seite



View all threads created 2008-08-01 15:54.