Fileupload per AJAX (Update)

Möchte man eine Datei per AJAX an einen Server senden, kann man das mit einem XMLHttpRequest tun. In früheren Versionen wurde selbiges nicht vorgesehen, weswegen oftmals mit IFrames gearbeitet wurde; das ist jetzt aber dank des Interface FormData() nicht mehr nötig¹.
Dieses Interface ermöglicht ein BLOB (binary large object) mit dem Request mitzusenden. Die theoretischen Fakten kann man auf der verlinkten Seite des w3c nachlesen, wir gehen zur Praxis. Übrigens nutze ich für derartige Sachen jQuery. Die damit verbundene Vereinfachung wiegt den zusätzlich nötigen Traffic für die Library bei weitem auf.

Der einfachste Fall

Wir haben ein Input-Element, und immer, wenn sich das ändert, wird eine Datei hochgeladen.

HTML:

<!DOCTYPE HTML>
<html>
<head><title>Upload per AJAX</title></head>
<body>
  <input type="file" id="uploadFile">
  <div id="responses"></div>
</body>
</html>

weiterlesen

Bash: in Dateien suchen

Wenn man einen bestimmten Begriff innerhalb von mehreren Dateien sucht, gibt verschiedene Wege, hier 2 davon:

$ find ./ -type f -exec grep -qi "foo" ; -print

$ grep -l foo *

Letzteres ist schneller, sucht aber nicht in Unterverzeichnissen, ersteres ist etwas langsamer, dafür kann man aber in Unterverzeichnissen suchen. Wahlweise lässt sich bei find auch noch die maximale Rekursionstiefe einstellen (-maxdepth 2).

weiterlesen