Gabi und Sascha
Kategorien : Alle | Berlin | Bücher | Fotografie | Java | Linkhalde | Weichware | Verfassung

Ich stolpere immer wieder über das Unix ln Kommando. Unter Unix ist es ja eigentlich immer so: von ist der erste Parameter, nach ist der Zielparameter. Einfach gesprochen: es ist eigentlich immer von-nach. Beim Link Kommando ln ist das anders. Dort wird erst das Ziel angegeben und dann der zu erzeugende Link. Der erzeugte Vektor ist dann aber genau umgekehrt, da der Link auf die ursprüngliche Datei zeigt. Ich gebe das beim ersten Versuch fast immer falsch an – womit ihr natürlich messerscharf schliesst: oft macht der Kohlmann das nicht.

Im Java 7 API wurde mit dem neuen java.nio.file Package auch die Möglichkeit geschaffen Links im Dateisystem zu erzeugen. Dort wurde es genau anders herum implementiert. Von Link nach Ziel. Für die Java Welt ist das konsistent. Im Zusammenspiel mit unixartigen Systemen nicht. Aber auch das werde ich irgendwann drin haben.


> Beim Link Kommando ln ist das anders. Dort wird erst das Ziel angegeben und dann der zu erzeugende Link.

Das kann man auch anders sehen. "Ziel" ist nicht das Ziel des Links, sondern das Ziel des Kommandos, die Datei die erstellt werden soll. Zuerst kommt immer die Datei, die's schon gibt, und dann die Datei, die erstellt werden soll. Dann ist's konsistent:

$ echo foo >foo
$ cat foo
foo
$ cat bar
cat: bar: No such file or directory
$ (cp,mv,ln) foo bar => mache bar aus foo
$ cat bar
foo