Wie erstelle ich eine benannte Gabel und speichere Daten darin?

2

Es sagt hier...

https://en.wikipedia.org/wiki/Fork_(file_system)#Apple

... dass das HFS + -Dateisystem in OSX "Multiple Named Forks" unterstützt. Wie erstelle ich eine Named Fork in der Kommandozeile und wie speichere ich Daten darin? Was ist die maximale Anzahl von Bytes, die ich in meine Named Fork setzen kann?

Volomike
quelle

Antworten:

2

Erweiterte Attribute sind das, wonach Sie suchen. Mit xattr können Sie erweiterte Attribute in der Befehlszeile anzeigen und ändern. In der Manpage finden Sie weitere Informationen. In Kürze können Sie jedoch eine mit dem folgenden Befehl schreiben

xattr -w com.foo.myattribute "Ein Bündel von Daten" / path / to / file

iWill
quelle
1

Ich weiß nichts über Named Forks außer der Ressourcenzweig. Ich kann es wie in Terminal (Bash-Shell) erstellen:

echo "data fork area" > /tmp/test.txt
echo "resource fork area" > /tmp/test.txt/..namedfork/rsrc
cat /tmp/test.txt
cat /tmp/test.txt/..namedfork/rsrc

Ich weiß nicht über Größenbeschränkungen.

Sie können auch eine binäre ausführbare Datei in den Ressourcenzweig kopieren und die Bytes wieder in eine Datei extrahieren und diese Datei ausführen:

cp /usr/bin/whoami > /tmp/test.txt/..namedfork/rsrc
# get ready for some bells to sound in your terminal
cat /tmp/test.txt/..namedfork/rsrc > /tmp/test.bin
chmod u+x /tmp/test.bin
/tmp/test.bin

Notiere dass der whoami Der Befehl ist irgendwie komisch, wenn Sie dies tun, weil es wirklich das ist id Kommando, und wenn Sie es wiederherstellen, wird es auf die id Befehl und Sie können es tun man id um mehr darüber zu erfahren.

Volomike
quelle
Diese Methode erstellt ein erweitertes Attribut mit dem Namen com.apple.ResourceFork. Sie können es mit dem Befehl xattr anzeigen.
iWill
@iWill: Ja, die neuere erweiterte Attributfunktion scheint eine zusätzliche Schnittstelle zu der sehr alten Ressourcenzweigfunktion zu bieten.
hippietrail