WebDAV-Properties sind Metadaten, die jede Resource haben kann. Da WebDAV XML-basiert ist, hat der Name einer Property immer einen XML-Namespace, und der Inhalt kann beliebige XML-Daten enthalten. Man unterscheidet zwischen Live-Properties, die vom Server berechnet werden oder eine vorgeschriebene Syntax haben, und Dead-Properties, die beliebige Daten enthalten können. Beispiele für Live-Properties sind der Etag (getetag) oder das Änderungsdatum (getlastmodified).
Nicht alle Server unterstützen das Speichern von Dead-Properties. Mit Apache funktioniert es jedoch problemlos. Auch OwnCloud bzw NextCloud unterstützen es und lighttpd auch, falls das entsprechende Feature mitkompiliert wurde.
Für den Zugriff auf Properties hat dav mehrere Befehle. Mit dav info
können alle Properties einer Resource aufgelistet werden.
$ dav info myserver/file.txt
name: file.txt
path: /file.txt
url: https://myserver/file.txt
type: resource
size: 72 KiB
namespace: DAV:
creationdate: 2015-10-11T16:22:09Z
getcontentlength: 73921
getcontenttype: text/plain
getetag: "120c1-521d69d4d6397"
getlastmodified: Sun, 11 Oct 2015 16:22:09 GMT
supportedlock:
namespace: http://apache.org/dav/props/
executable: F
namespace: http://example.com/ns
myprop: Hello World
Für den Zugriff auf einzelne Properties gibt es die Befehle get-property
, um den Inhalt einer Property anzuzeigen, und set-property
, um den Inhalt zu ändern.
set-property
verlangt als Argumente eine URL, den Property-Namen. Als drittes Argument kann auch der Wert angegeben werden, der dieser Property zugewiesen werden soll. Wird jedoch keiner angegeben, liest dav diesen von stdin. Desweiteren sollte auch mit der -n
Option ein Namespace-URI angegeben werden, falls nicht der Default-Namespace DAV:
verwendet werden soll.
Das folgende Beispiel setzt für eine Resource die Property myprop
im Namespace http://example.com/ns
mit dem Value Hello World
.
$ dav set-property -n http://example.com/ns myserver/file.txt myprop "Hello World!"
Den Inhalt anzeigen kann man dann mit get-property
. Die Argumente sind genau wie bei set-property
, nur dass kein Value angegeben wird.
$ dav get-property -n http://example.com/ns myserver/file.txt myprop
Hello World
Aktuell hat dav noch die Limitierung, dass keine XML-Values bei Properties unterstützt werden. Sollte also eine Property nicht nur einfachen Text, sondern XML-Daten enthalten, wird der Inhalt nicht angezeigt.
Kommentare
Andreas | Artikel: Datenanalyse in der Shell Teil 1: Basis-Tools
Einfach und cool!
Danke Andreas
Rudi | Artikel: Raspberry Pi1 vs Raspberry Pi4 vs Fujitsu s920 vs Sun Ultra 45
Peter | Artikel: XNEdit - Mein NEdit-Fork mit Unicode-Support
Damit wird Nedit durch XNedit ersetzt.
Danke!
Olaf | Artikel: XNEdit - Mein NEdit-Fork mit Unicode-Support
Anti-Aliasing hängt von der Schriftart ab. Mit einem bitmap font sollte die Schrift klassisch wie in nedit aussehen.
Einfach unter Preferences -> Default Settings -> Text Fonts nach einer passenden Schriftart suchen.
Peter | Artikel: XNEdit - Mein NEdit-Fork mit Unicode-Support
Mettigel | Artikel: Raspberry Pi1 vs Raspberry Pi4 vs Fujitsu s920 vs Sun Ultra 45
Ich hatte gedacht, dass der GX-415 im s920 deutlich mehr Dampf hat als der Raspi4.
Mein Thinclient verbraucht mit 16 GB RAM ~11 W idle, das ist das Dreifache vom RP4. Das muss man dem kleinen echt lassen... Sparsam ist er.
Olaf | Artikel: Raspberry Pi1 vs Raspberry Pi4 vs Fujitsu s920 vs Sun Ultra 45
Ergebnisse von der Ultra 80 wären natürlich interessant, insbesondere im Vergleich mit dem rpi1.
kosta | Artikel: Raspberry Pi1 vs Raspberry Pi4 vs Fujitsu s920 vs Sun Ultra 45
ich hätt hier zugriff auf Ultra-80 4CPU 4GB 2x Elite3D.