SatansEier Geschrieben 23. Juli 2010 Teilen Geschrieben 23. Juli 2010 Hallo zusammen Auf einer SUSE 10.2 werden >2000 Daten per cp * "abgeholt". Fehlermeldung: -bash: /bin/cp: Die Argumentliste ist zu lang ...offenbar tritt der Fehler im Web häufiger auf und jedes mal wird zum einzeln kopieren (z.B. durch Schleife) oder gesamtes Verzeichnis kopieren geraten. Interessant ist dabei das auf meiner "Ubuntu 8.04 Server" VM-Testumgebung, cp * bei dieser Datenmenge einwandfrei funktioniert. Zur Ergänzung: cp wird über exec() aus einem PHP-Script aufgerufen. Kann sich bzw. mir das einer erklären? Gruß S.E. Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
flashpixx Geschrieben 23. Juli 2010 Teilen Geschrieben 23. Juli 2010 Bitte einmal eine Suchmaschine verwenden und nach "argument list too long" suchen. Da wird das ganze ausführlich beschrieben. Ich verstehe nicht, warum man per exec das cp ausführt, denn PHP unterstützt direktes kopieren von Dateien PHP: copy - Manual Mit entsprechenden Dir-Funktionen kann man auch ganze Verzeichnisse kopieren, wobei man mit Occam's Razor besser arbeiten könnte Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
SatansEier Geschrieben 23. Juli 2010 Autor Teilen Geschrieben 23. Juli 2010 Hi flashpixx, dein Hinweis noch mal die Suchmaschine zu benutzen hat mich auf xargs gebracht. Für diesen Zweck scheint mir das brauchbar. Ich verstehe nicht, warum man per exec das cp ausführt, denn PHP unterstützt direktes kopieren von Dateien Weil sich bisher niemand die Mühe gemacht hat den alten Code hier aufwändig zu refactorn. Aus Zeitgründen hat sichs damals wohl angeboten so zu lösen. Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
flashpixx Geschrieben 23. Juli 2010 Teilen Geschrieben 23. Juli 2010 dein Hinweis noch mal die Suchmaschine zu benutzen hat mich auf xargs gebracht. Für diesen Zweck scheint mir das brauchbar. Genau darauf hatte ich es abgesehen Weil sich bisher niemand die Mühe gemacht hat den alten Code hier aufwändig zu refactorn. Aus Zeitgründen hat sichs damals wohl angeboten so zu lösen. Solltest Du aber mal machen, denn exec / system usw Kommandos sollten in der php.ini deaktiviert werden denn sie sind ein Sicherheitsrisiko Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
lupo49 Geschrieben 23. Juli 2010 Teilen Geschrieben 23. Juli 2010 Die Gefahr ist auch, dass das PHP-Skript irgendwann in der Zukunft vom Interpreter terminiert wird, weil es zu lange läuft bzw. zu viele Dateien kopiert werden müssen. Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Empfohlene Beiträge
Dein Kommentar
Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.