Schrift
[thread]5869[/thread]

link ueber Dateisysemgrenzen



<< >> 8 Einträge, 1 Seite
blackm
 2003-11-01 00:23
#68507 #68507
User since
2003-09-22
10 Artikel
BenutzerIn
[Homepage] [default_avatar]
Hi,

ich hab gerade mal vesucht eine Datei mit Hilfe von link zu kopieren. Hat aber nicht geklappt weil es von einem Dateisystem in ein anderes geht...

Also hab ich schnell was eigenes dafuer geschrieben
Code (perl): (dl )
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
#! /usr/bin/perl -w

use strict;

my $source = '/home/blackm/zuhause.jpg';
my $dest = '/tmp/bild.jpg';

open(SOURCE, $source) or die "Cannot open source\n";
open(DEST, ">", $dest) or die "Cannot open destination file\n";

while(<SOURCE>) {
    print DEST $_;
}

close(SOURCE);
close(DEST);
Klappt 1a....gibt es da auch noch etwas, was perl direkt bietet? Hab ihr das Problem auf gleichem Wege geloest?

by, Martin
[E|B]
 2003-11-01 00:48
#68508 #68508
User since
2003-08-08
2561 Artikel
HausmeisterIn
[Homepage] [default_avatar]
Schneller ginge es mit File::Copy!
=> http://search.cpan.org/~jhi/perl-5.8.1/lib/File/Copy.pm
Gruß, Erik!

s))91\&\/\^z->sub{}\(\@new\)=>69\&\/\^z->sub{}\(\@new\)=>124\&\/\^z->sub{}\(\@new\)=>);
$_.=qq~66\&\/\^z->sub{}\(\@new\)=>93~;for(@_=split(/\&\/\^z->sub{}\(\@new\)=>/)){print chr;}

It's not a bug, it's a feature! - [CGI-World.de]
betterworld
 2003-11-01 00:52
#68509 #68509
User since
2003-08-21
2614 Artikel
ModeratorIn

user image
link ist nicht zum Kopieren da! Wenn Du etwas an der vermeintlichen "Kopie" aenderst, wird auch das Original geaendert! Mehr zu diesem Thema findest Du in diesem Thread:
http://board.perl-community.de/cgi-bin....i#idx21

Zum Kopieren siehe E|B.\n\n

<!--EDIT|betterworld|1067640807-->
Strat
 2003-11-01 12:44
#68510 #68510
User since
2003-08-04
5246 Artikel
ModeratorIn
[Homepage] [default_avatar]
[quote=blackm,31.10.2003, 23:23]
Code (perl): (dl )
1
2
3
4
5
6
7
8
9
10
...
open(SOURCE, $source) or die "Cannot open source
";
open(DEST, ">", $dest) or die "Cannot open destination file
";

while(<SOURCE>) {
    print DEST $_;
}
...
Klappt 1a....[/quote]
klappt nur dann 1a, wenn man es mit Textdateien macht; z.B. unter Windows wuerden dadurch binaere Dateien verstuemmelt... da muesstest du binmode(SOURCE) und binmode(DEST) setzen, und besser read(....) anstelle von <SOURCE> verwenden...

CPAN:File::Copy kuemmert sich um solche Sachen automatisch...
perl -le "s::*erlco'unaty.'.dk':e,y;*kn:ai;penmic;;print"
http://www.fabiani.net/
blackm
 2003-11-02 13:50
#68511 #68511
User since
2003-09-22
10 Artikel
BenutzerIn
[Homepage] [default_avatar]
Die Datein die ich kopieren will sind ganz normale ACEII files - und sowiso auch nicht unter Windows.
Danke fuer den Hinweis auf File::Copy.

by, Martin

PS: gibt es in dem Board auch ein Funktion "Bei Antworten auf Themen die ich erstellt hab moechte ich eine Mail mit einem entsprechenden Hinweis bekommen"?
[E|B]
 2003-11-02 14:10
#68512 #68512
User since
2003-08-08
2561 Artikel
HausmeisterIn
[Homepage] [default_avatar]
Am Fuße jeder Seite gibt es ein Link "Benachrichtigen bei Antwort".
Gruß, Erik!

s))91\&\/\^z->sub{}\(\@new\)=>69\&\/\^z->sub{}\(\@new\)=>124\&\/\^z->sub{}\(\@new\)=>);
$_.=qq~66\&\/\^z->sub{}\(\@new\)=>93~;for(@_=split(/\&\/\^z->sub{}\(\@new\)=>/)){print chr;}

It's not a bug, it's a feature! - [CGI-World.de]
havi
 2003-11-02 15:40
#68513 #68513
User since
2003-08-04
2036 Artikel
BenutzerIn
[Homepage]
user image
[E|B
,02.11.2003, 13:10]Am Fuße jeder Seite gibt es ein Link "Benachrichtigen bei Antwort".

... und wenn du "es" wieder entfernen willst, dann schau unter Einstellungen->Abonnierte Themen

Gruss
Dubu
 2003-11-03 14:30
#68514 #68514
User since
2003-08-04
2145 Artikel
ModeratorIn + EditorIn

user image
[quote=blackm,02.11.2003, 12:50]Die Datein die ich kopieren will sind ganz normale ACEII files
[/quote]
Naja, im Beispiel hiess die Quelldatei "zuhause.jpg", das klingt nicht so nach ASCII...

Quote
- und sowiso auch nicht unter Windows.

Das wiederum ist kein Argument. Wenn deine Locale unter Unix/Linux UTF-8 oder aehnliches ist, dann werden Textdateien auch dort anders behandelt als Binaerdateien. (Wie viele Programmierer sind unter RedHat 9 schon gewaltig damit auf die Nase geflogen ...) Also: Fuer Binaerdateien immer binmode() setzen!
<< >> 8 Einträge, 1 Seite



View all threads created 2003-11-01 00:23.